تحميل وحفظ خطوط TTF و OTF في Java
قم بإدارة وفحص وتعديل وحفظ خطوط TrueType (.ttf) و OpenType (.otf) بسهولة في تطبيقات Java الخاصة بك. يقدم Aspose.Font for Java واجهة برمجة تطبيقات قوية وعالية الأداء لتحميل ملفات الخطوط من التخزين المحلي أو تدفقات البايتات، واستخراج البيانات الوصفية، وحفظ هياكل الخطوط المحدثة—كل ذلك دون الاعتماد على محركات الخطوط الأصلية لنظام التشغيل.
تعد TrueType و OpenType تنسيقات الخطوط القياسية عبر أنظمة التشغيل الحديثة وتطبيقات الويب وسير عمل النشر الرقمي. تتيح معالجة الخطوط برمجيًا قدرات مؤسسية رئيسية:
- معالجة ملفات الخطوط ديناميكيًا: - قراءة خطوط TTF/OTF مباشرة من القرص أو تدفقات قواعد البيانات أو مخازن الذاكرة المؤقتة.
- فحص الخط واستخراج البيانات الوصفية: - الوصول إلى بيانات ترويسة الخط، وخرائط الأحرف، وتعاريف الحروف الرسومية، ومعلومات الترخيص.
- التوافق عبر الأنظمة الأساسية: - تشغيل أعباء عمل معالجة الخطوط بسلاسة عبر أنظمة Linux و Windows و macOS وبيئات النشر السحابية.
- بدون أي تبعيات أصلية: - الاستغناء عن الاعتماد على برامج تثبيت الخطوط الخاصة بنظام التشغيل أو برامج تشغيل رسومات واجهة المستخدم الرسومية (مثل GDI أو X11).
قدرات العرض الأساسية
التحميل من التدفق والقرص - فتح ملفات TTF و OTF باستخدام FileSystemStreamSource أو ByteContentStreamSource.
الوصول إلى البيانات الوصفية والمقاييس - فحص مقاييس الحروف الرسومية، وعروض التقدم، والمربعات المحيطة، وجداول تسمية الخطوط.
تصدير وحفظ بيانات الخط - تعديل معلمات الخط وتسلسل كائنات الخط المحدثة مباشرة إلى القرص أو التدفقات.
خيارات تحويل التنسيق - تحويل خطوط TrueType/OpenType إلى تنسيقات الويب الحديثة مثل WOFF أو WOFF2 أو SVG.
كيفية تحميل خط TrueType في Java
يتطلب تحميل خط TrueType أو OpenType إنشاء مثيل من FontDefinition مع نوع FontType المناسب وفتح الخط عبر فئة مصنع Font.
import com.aspose.font.FileSystemStreamSource;
import com.aspose.font.Font;
import com.aspose.font.FontDefinition;
import com.aspose.font.FontFileDefinition;
import com.aspose.font.FontType;
import com.aspose.font.TtfFont;
public class LoadTrueTypeFont {
public static void main(String[] args) {
// Define path to the TrueType font file (.ttf / .otf)
String fontFilePath = "path/to/Montserrat-Regular.ttf";
// Initialize FontDefinition for TTF font type
FontDefinition fontDef = new FontDefinition(
FontType.TTF,
new FontFileDefinition("ttf", new FileSystemStreamSource(fontFilePath))
);
// Open and load the TtfFont object
TtfFont font = (TtfFont) Font.open(fontDef);
// Access basic font properties
System.out.println("Font Name: " + font.getFontName());
System.out.println("Glyph Count: " + font.getNumGlyphs());
}
}كيفية حفظ خط TrueType في Java
بعد تحميل الخط في الذاكرة وإجراء استخراج البيانات أو التعديلات، يمكنك حفظ الخط مرة أخرى في وحدة التخزين على القرص المحلي أو كتابته في تدفق بايتات الإخراج.
import com.aspose.font.ByteContentStreamSource;
import com.aspose.font.Font;
import com.aspose.font.FontDefinition;
import com.aspose.font.FontFileDefinition;
import com.aspose.font.FontType;
import com.aspose.font.TtfFont;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Paths;
public class SaveTrueTypeFont {
public static void main(String[] args) throws IOException {
// Read font file into byte array stream
String inputPath = "path/to/source.ttf";
byte[] fontBytes = Files.readAllBytes(Paths.get(inputPath));
// Define font source using ByteContentStreamSource
FontDefinition fontDef = new FontDefinition(
FontType.TTF,
new FontFileDefinition("ttf", new ByteContentStreamSource(fontBytes))
);
// Open TTF font object
TtfFont font = (TtfFont) Font.open(fontDef);
// Perform font processing or inspection here...
// Save the updated TtfFont object back to disk
String outputPath = "path/to/output_saved.ttf";
font.save(outputPath);
System.out.println("TrueType font successfully saved to: " + outputPath);
}
}التثبيت والإعداد
قم بتضمين Aspose.Font for Java في مشروعك عبر Maven.
Package Manager Console Command
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>https://repository.aspose.com/repo/</url>
</repository>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-font</artifactId>
<version>Latest</version>
</dependency>
الأسئلة الشائعة
1. هل يمكنني تحميل خطوط OpenType (.otf) باستخدام نفس الأساليب المستخدمة مع خطوط TrueType؟
نعم. يدعم Aspose.Font for Java تنسيقي خطوط TrueType (.ttf) وOpenType (.otf) من خلال بنية TtfFont وFontDefinition.
2. هل يتطلب تحميل الخطوط وحفظها تثبيت الخطوط على نظام التشغيل المضيف؟
لا. يقرأ Aspose.Font for Java هياكل الخطوط مباشرةً كتيارات ملفات أو مخازن مؤقتة للبايتات. ويعمل بشكل مستقل دون الحاجة إلى تثبيت الخط في أدلة النظام.
3. هل يمكنني تحويل خطوط TTF أو OTF إلى تنسيقات جاهزة للويب مثل WOFF أو SVG؟
نعم. يوفر Aspose.Font for Java ميزات تحويل مدمجة لتحويل خطوط TrueType وOpenType المحملة إلى تنسيقات WOFF وWOFF2 وSVG وCFF.