Репозиторий Sisyphus
Последнее обновление: 1 октября 2023 | Пакетов: 18631 | Посещений: 37760994
en ru br
Репозитории ALT
S:1.5.8-alt2
5.1: 1.3.5.1-alt4.M50P.1
4.1: 1.3.4-alt5
4.0: 1.3.4-alt3.M40.1
3.0: 1.2.2-alt1.cvs20050405
+backports:1.3.3.7-alt0.M30.1
www.altlinux.org/Changes

Группа :: Издательство
Пакет: scribus

 Главная   Изменения   Спек   Патчи   Sources   Загрузить   Gear   Bugs and FR  Repocop 

Патч: scribus-1.5.7-up-harfbuzz-3.0.0.patch
Скачать


commit 68ec41169eaceea4a6e1d6f359762a191c7e61d5
Author: Jean Ghali <jghali@libertysurf.fr>
Date:   Sun Sep 19 11:59:50 2021 +0000
    #16635: Replace hb_subset, removed in harfbuzz 3.0, by hb_subset_or_fail
    
    git-svn-id: svn://scribus.net/trunk/Scribus@24707 11d20701-8431-0410-a711-e3c959e3b870
diff --git a/scribus/fonts/sfnt.cpp b/scribus/fonts/sfnt.cpp
index fca8b3915..b3dfa50dc 100644
--- a/scribus/fonts/sfnt.cpp
+++ b/scribus/fonts/sfnt.cpp
@@ -1271,9 +1271,15 @@ namespace sfnt {
 #endif
 #endif
 
+#if HB_VERSION_ATLEAST(2, 9, 0)
+		QScopedPointer<hb_face_t, HbFaceDeleter> hbSubsetFace(hb_subset_or_fail(hbFullFace.get(), hbSubsetInput.get()));
+		if (hbSubsetFace.isNull())
+			return QByteArray();
+#else
 		QScopedPointer<hb_face_t, HbFaceDeleter> hbSubsetFace(hb_subset(hbFullFace.get(), hbSubsetInput.get()));
 		if (hbSubsetFace.isNull())
 			return QByteArray();
+#endif
 
 		QScopedPointer<hb_blob_t, HbBlobDeleter> hbSubsetBlob(hb_face_reference_blob(hbSubsetFace.get()));
 		if (hbSubsetBlob.isNull())
commit 1b546978bc4ea0b2a73fbe4d7cf947887e865162
Author: Jean Ghali <jghali@libertysurf.fr>
Date:   Sat Aug 21 20:05:43 2021 +0000
    Use new hb-subset api with harfbuzz >= 2.9.0 in order to prepeare for removal of legacy API in 3.0
    
    git-svn-id: svn://scribus.net/trunk/Scribus@24696 11d20701-8431-0410-a711-e3c959e3b870
diff --git a/scribus/fonts/sfnt.cpp b/scribus/fonts/sfnt.cpp
index 50777f66e..fca8b3915 100644
--- a/scribus/fonts/sfnt.cpp
+++ b/scribus/fonts/sfnt.cpp
@@ -1256,11 +1256,19 @@ namespace sfnt {
 
 		for (int i = 0; i < cids.count(); ++i)
 			hb_set_add(glyphSet, cids.at(i));
-	
+
+#if HB_VERSION_ATLEAST(2, 9, 0)
+		uint32_t subsetFlags = (uint32_t) hb_subset_input_get_flags(hbSubsetInput.get());
+		subsetFlags |= HB_SUBSET_FLAGS_RETAIN_GIDS;
+		subsetFlags &= ~HB_SUBSET_FLAGS_NO_HINTING;
+		subsetFlags |= HB_SUBSET_FLAGS_NAME_LEGACY;
+		hb_subset_input_set_flags(hbSubsetInput.get(), subsetFlags);
+#else
 		hb_subset_input_set_retain_gids(hbSubsetInput.get(), true);
 		hb_subset_input_set_drop_hints(hbSubsetInput.get(), false);
 #if HB_VERSION_ATLEAST(2, 6, 5)
 		hb_subset_input_set_name_legacy(hbSubsetInput.get(), true);
+#endif
 #endif
 
 		QScopedPointer<hb_face_t, HbFaceDeleter> hbSubsetFace(hb_subset(hbFullFace.get(), hbSubsetInput.get()));
 
дизайн и разработка: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
текущий майнтейнер: Michael Shigorin