تتمثل إحدى الميزات البارزة لملفات TIFF في قدرتها على تخزين صور متعددة (لكل منها قنوات متعددة) كإطارات متسلسلة في مكدس زمني أو مكدس z من الصور. الآن في هذه المقالة ، سنشرح خطوات استخراج إطار TIFF ، وتغيير حجمه وحفظه بشكل منفصل على وحدة تخزين. تلبي عملية تغيير حجم الصورة عبر الإنترنت أبعادًا جديدة (العرض والارتفاع) مع حفظ إطار TIFF المحدث.
تغيير حجم الصورة API
Aspose.Imaging Cloud SDK for Java هو حل قائم على REST يتيح لك تعديل الصور النقطية وملفات التعريف و Photoshop وتعديلها وتحويلها برمجيًا إلى مجموعة متنوعة من التنسيقات المدعومة. كما أنه يوفر ميزة معالجة صور TIFF ، حيث يمكننا حتى العمل على إطارات TIFF الفردية. الآن ، من أجل البدء في استخدام SDK ، نحتاج إلى إضافة مرجعها في مشروع Java. لذا ، يرجى إضافة التفاصيل التالية في ملف pom.xml الخاص بمشروع نوع بناء maven.
<repositories>
<repository>
<id>aspose-cloud</id>
<name>artifact.aspose-cloud-releases</name>
<url>https://artifact.aspose.cloud/repo</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-imaging-cloud</artifactId>
<version>22.4</version>
</dependency>
</dependencies>
الخطوة التالية هي الحصول على بيانات اعتماد العميل من Cloud Dashboard وإذا لم يكن لديك حساب عبر Aspose Cloud Dashboard ، يرجى إنشاء حساب مجاني باستخدام عنوان بريد إلكتروني صالح.
تغيير حجم الصورة عبر الإنترنت في Java
في هذا القسم ، سنستخدم GetImageFrame API لتطوير مغير حجم الصورة TIFF الخاص بنا. سنقوم أيضًا بتحميل الصورة إلى التخزين السحابي وبعد تحديث معلمات الصورة ، يتم إرجاع الصورة المعدلة في تدفق الاستجابة. يرجى ملاحظة أن واجهة برمجة التطبيقات تتيح لك تغيير حجم الصور بشكل مجمّع أو تغيير حجم إطار TIFF محدد فقط باستخدام معلمة saveOtherFrames.
- أولاً ، قم بإنشاء كائن من ImagingApi باستخدام بيانات اعتماد العميل المخصصة
- ثانيًا ، اقرأ محتوى صورة TIFF الأولى باستخدام طريقة readAllBytes (…) وأعدها إلى مصفوفة بايت []
- ثالثًا ، قم بإنشاء مثيل لفئة UploadFileRequest حيث نقوم بتمرير اسم صورة TIFF
- الآن قم بتحميل أول صورة TIFF إلى التخزين السحابي باستخدام طريقة uploadFile (…)
- تتمثل الخطوة التالية في تحديد فهرس إطار TIFF وأبعاد العرض والارتفاع الجديدة وفهرس إطار tiff معين
- الآن قم بإنشاء كائن GetImageFrameRequest حيث نقوم بتمرير اسم صورة TIFF المدخلات والخصائص المحددة أعلاه
- قم باستدعاء أسلوب getImageFrame (…) لفئة ImagingAPI للحصول على إطار TIFF المحدد
- أخيرًا ، احفظ الإطار المستخرج على محرك الأقراص المحلي باستخدام كائن FileOutputStream
// احصل على ClientID و ClientSecret من https://dashboard.aspose.cloud/
String clientId = "7ef10407-c1b7-43bd-9603-5ea9c6db83cd";
String clientSecret = "ba7cc4dc0c0478d7b508dd8ffa029845";
// خلق كائن التصوير
ImagingApi imageApi = new ImagingApi(clientSecret, clientId);
// تحميل أول صورة TIFF من النظام المحلي
File file1 = new File("TiffSampleImage.tif");
byte[] imageStream = Files.readAllBytes(file1.toPath());
// إنشاء ملف طلب تحميل الكائن
UploadFileRequest uploadRequest = new UploadFileRequest("input.tiff",imageStream,null);
// تحميل أول صورة TIFF إلى التخزين السحابي
imageApi.uploadFile(uploadRequest);
Integer frameId = 0; // Frame number inside TIFF
// عرض جديد وارتفاع الإطار المستخرج
Integer newWidth = 400;
Integer newHeight = 600;
// ينتج عن تضمين الإطار المحدد فقط وليس الإطارات الأخرى
Boolean saveOtherFrames = false;
// قم بإنشاء كائن طلب لاستخراج إطارات tiff بناءً على تفاصيل محددة
GetImageFrameRequest getImageFrameRequest = new GetImageFrameRequest("input.tiff", frameId, newWidth, newHeight,
null, null, null, null, null, saveOtherFrames, null, null);
// يتم إرجاع الإطار المستخرج في تدفق الاستجابة
byte[] updatedImage = imageApi.getImageFrame(getImageFrameRequest);
// احفظ إطار TIFF المستخرج على التخزين المحلي
FileOutputStream fos = new FileOutputStream("/Users/nayyer/Documents/" + "Extracted-TIFF.tiff");
fos.write(updatedImage);
fos.close();
يمكن تنزيل نماذج صور TIFF المستخدمة في المثال أعلاه من TiffSampleImage.tiff.
تقليل حجم الصورة باستخدام أوامر cURL
نظرًا لبنية REST لواجهة برمجة التطبيقات ، يمكن أيضًا الوصول إليها عبر أوامر cURL. لذلك في هذا القسم ، سنناقش التفاصيل حول كيفية تقليل حجم الصورة أو استخراج إطار tiff بأبعاد معينة ، باستخدام أوامر cURL. الآن ، الخطوة الأولى هي إنشاء رمز وصول JWT (بناءً على بيانات اعتماد العميل) باستخدام الأمر التالي.
curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=bb959721-5780-4be6-be35-ff5c3a6aa4a2&client_secret=4d84d5f6584160cbd91dba1fe145db14" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"
بعد إنشاء رمز JWT ، نحتاج إلى تنفيذ الأمر التالي لتغيير حجم إطار TIFF.
curl -v -X GET "https://api.aspose.cloud/v3.0/imaging/input.tiff/frames/0?newWidth=400&newHeight=600&saveOtherFrames=false" \
-H "accept: application/json" \
-H "authorization: Bearer <JWT Token>"
-o ResizedFrame.tiff
استنتاج
قدمت هذه المقالة تفاصيل بسيطة ولكنها مذهلة حول كيفية تغيير حجم الصورة (TIFF) باستخدام Java. شرح هذا البرنامج التعليمي أيضًا جميع الخطوات لتغيير حجم إطار TIFF باستخدام أوامر cURL. يرجى ملاحظة أن هناك خيارًا آخر لاختبار إمكانات API يتم عبر SwaggerUI داخل متصفح الويب. أيضًا ، إذا كنت مهتمًا بتعديل الكود المصدري لـ SDK ، فيمكن تنزيله من GitHub ، كما تم نشره بموجب ترخيص MIT.
ومع ذلك ، تعد وثائق المنتج مصدرًا رائعًا للمعلومات لمعرفة كل التفاصيل الضرورية حول الميزات المثيرة الأخرى لواجهة برمجة التطبيقات. أخيرًا ، في حالة مواجهة مشكلات أثناء استخدام واجهة برمجة التطبيقات ، يمكنك الاتصال بنا للحصول على حل سريع عبر منتدى دعم المنتج المجاني.
مقالات ذات صلة
يرجى زيارة الروابط التالية لمعرفة المزيد حول: