تصاویر SVG برجسته هستند زیرا مقیاس پذیر هستند و بدون در نظر گرفتن اندازه یا وضوح صفحه، کیفیت یکسانی دارند. آنها را می توان در هر رزولوشن طراحی کرد، و بدون آسیب رساندن به کیفیت (یا پیکسل شدن) اندازه آنها را بالا/پایین کرد. اما، از آنجایی که تصاویر SVG بر اساس نقاط و مسیرها هستند، بنابراین به جای پیکسل ها، نمی توانند جزئیات زیادی را به اندازه یک تصویر شطرنجی نمایش دهند. بنابراین، اگر SVG را به تصویر PNG تبدیل کنیم، این مشکلات قابل حل است.
- API تبدیل SVG به PNG
- تبدیل SVG به PNG در جاوا
- SVG را با استفاده از دستورات cURL به صورت PNG ذخیره کنید
API تبدیل SVG به PNG
در این مقاله، ما قصد داریم از Aspose.Imaging Cloud SDK برای جاوا استفاده کنیم که API مبتنی بر REST است که قابلیتهای ویرایش برنامهنویسی، دستکاری و تبدیل شطرنجی، متا فایلها، فتوشاپ را به انواع [فرمتهای پشتیبانی شده] ارائه میکند. ]. همچنین از ویژگی تبدیل SVG به PNG به صورت آنلاین پشتیبانی می کند. اکنون، برای شروع استفاده از SDK، باید مرجع آن را با گنجاندن اطلاعات زیر در 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>
اکنون برای استفاده از API، به اعتبار مشتری شخصی خود نیاز داریم. اگر قبلاً در Aspose Cloud Dashboard ثبت نام کرده باشید، به راحتی می توان آنها را به دست آورد. در غیر این صورت، یک حساب کاربری رایگان از طریق یک آدرس ایمیل معتبر ثبت کنید و اعتبار مشتری خود را دریافت کنید.
تبدیل SVG به PNG در جاوا
API پردازش تصویر ما قادر به تبدیل PNG به SVG و SVG به PNG با حداقل خطوط کد است. بنابراین در این بخش قصد داریم تمام جزئیات تبدیل SVG به PNG را با استفاده از جاوا مورد بحث قرار دهیم.
- اول از همه، یک شی از کلاس ImagingApi ایجاد کنید که در آن اعتبار مشتری را به عنوان آرگومان ارسال می کنیم
- در مرحله دوم، محتوای تصویر SVG را با استفاده از روش readAllBytes(…) بخوانید و آن را به آرایه بایت[] برگردانید.
- سپس در حین ارسال نام SVG یک نمونه از UploadFileRequest ایجاد کنید و با استفاده از روش uploadFile(…) آن را در فضای ذخیره سازی ابری آپلود کنید.
- اکنون یک شی از ConvertImageRequest ایجاد کنید، جایی که نام SNG ورودی و فرمت حاصل را به عنوان “PNG” ارسال می کنیم.
- برای شروع تبدیل SVG به PNG، متد convertImage(…) را فراخوانی کنید. سپس خروجی به عنوان جریان پاسخ برگردانده می شود
- در نهایت، PNG حاصل را با استفاده از شی FileOutputStream در درایو محلی ذخیره کنید
// ClientID و ClientSecret را از https://dashboard.aspose.cloud/ دریافت کنید
String clientId = "7ef10407-c1b7-43bd-9603-5ea9c6db83cd";
String clientSecret = "ba7cc4dc0c0478d7b508dd8ffa029845";
// ایجاد شی تصویربرداری
ImagingApi imageApi = new ImagingApi(clientSecret, clientId);
// تصویر SVG را از سیستم محلی بارگیری کنید
File file1 = new File("File_Extension Icons.svg");
byte[] imageStream = Files.readAllBytes(file1.toPath());
// ایجاد شی درخواست آپلود فایل
UploadFileRequest uploadRequest = new UploadFileRequest("input.svg",imageStream,null);
// تصویر SVG را در فضای ذخیره سازی ابری آپلود کنید
imageApi.uploadFile(uploadRequest);
// فرمت خروجی تصویر را مشخص کنید
String format = "PNG";
// ایجاد شی درخواست تبدیل تصویر
ConvertImageRequest convertImage = new ConvertImageRequest("input.svg", format, null, null);
// تبدیل SVG به PNG و بازگشت تصویر در جریان پاسخ
byte[] resultantImage = imageApi.convertImage(convertImage);
// تصویر PNG را در حافظه محلی ذخیره کنید
FileOutputStream fos = new FileOutputStream("/Users/nayyer/Documents/" + "Converted.png");
fos.write(resultantImage);
fos.close();
تصویر SVG ورودی استفاده شده در مثال بالا را می توان از FileExtension Icons.svg دانلود کرد.
SVG را با استفاده از دستورات cURL به صورت PNG ذخیره کنید
همانطور که Aspose.Imaging Cloud بر اساس معماری REST توسعه یافته است، بنابراین می توان به راحتی از طریق دستورات cURL به آن دسترسی داشت. بنابراین در این بخش با استفاده از دستورات cURL قصد داریم SVG را به صورت PNG ذخیره کنیم. اکنون، اولین قدم این است که با استفاده از دستور زیر، یک نشانه دسترسی 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 تولید شد، لطفاً دستور زیر را برای ذخیره SVG به عنوان تصویر PNG اجرا کنید.
curl -v -X GET "https://api.aspose.cloud/v3.0/imaging/input.svg/convert?format=PNG" \
-H "accept: application/json" \
-H "authorization: Bearer <JWT Token>" \
-o Resultant.png
نتیجه
در پایان این مقاله، جزئیاتی را در مورد نحوه تبدیل SVG به PNG با استفاده از جاوا آموختیم. در همان زمان، ما همچنین گزینه ای برای تبدیل SVG به PNG با استفاده از دستورات cURL را بررسی کرده ایم. علاوه بر این، اگر میخواهید کد منبع SDK را در دست داشته باشید و آن را مطابق با نیاز خود تغییر دهید، میتوانید آن را از GitHub دانلود کنید (SDKهای ابری ما تحت مجوز MIT توسعه یافتهاند). لطفاً توجه داشته باشید که گزینه دیگری برای آزمایش ویژگیهای شگفتانگیز API از طریق SwaggerUI در مرورگر وب است.
با این وجود، Product Documentation یک مخزن شگفت انگیز از مقالات است که سایر ویژگی های هیجان انگیز API را توضیح می دهد. در نهایت، اگر هنگام استفاده از API با مشکلی مواجه شدید، ممکن است از طریق [تالار گفتمان پشتیبانی محصول] رایگان به ما مراجعه کنید.
مقالات مرتبط
توصیه می کنیم برای کسب اطلاعات بیشتر به لینک های زیر مراجعه کنید: