SVG გამოსახულებები გამორჩეულია, რადგან ისინი მასშტაბირებადია და ინარჩუნებენ იგივე ხარისხს, განურჩევლად ზომისა და ეკრანის გარჩევადობისა. მათი დაპროექტება შესაძლებელია ნებისმიერი რეზოლუციით და მათი ზომების გაზრდა/დაწევა, ხარისხის (ან პიქსელაციის) გარეშე. მაგრამ, რადგან SVG გამოსახულებები ეფუძნება წერტილებსა და ბილიკებს, ამიტომ პიქსელების ნაცვლად, მათ არ შეუძლიათ იმდენი დეტალის ჩვენება, რამდენიც რასტრულ სურათს. ასე რომ, თუ ჩვენ გადავიყვანთ SVG-ს PNG სურათზე, ეს საკითხები შეიძლება მოგვარდეს.
- SVG to PNG კონვერტაციის API
- გადაიყვანეთ SVG PNG-ზე Java-ში
- შეინახეთ SVG, როგორც PNG, cURL ბრძანებების გამოყენებით
SVG to PNG კონვერტაციის API
ამ სტატიაში ჩვენ ვაპირებთ გამოვიყენოთ Aspose.Imaging Cloud SDK for Java, რომელიც არის REST დაფუძნებული API, რომელიც გთავაზობთ პროგრამულად რედაქტირების, მანიპულირების და ტრანსფორმაციის შესაძლებლობებს რასტერების, მეტაფაილების, photoshop-ის სხვადასხვა მხარდაჭერის ფორმატებში. ]. ის ასევე მხარს უჭერს SVG-ს PNG-ად გადაქცევის ფუნქციას ონლაინ რეჟიმში. ახლა, იმისათვის, რომ დავიწყოთ SDK-ის გამოყენება, ჩვენ უნდა დავამატოთ მისი მითითება ჩვენს Java პროექტში შემდეგი ინფორმაციის ჩათვლით pom.xml-ში (maven build type project).
<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-ზე Java-ში
ჩვენი გამოსახულების დამუშავების API-ს შეუძლია გადაიყვანოს PNG-ად SVG-ად და SVG-ად PNG-ად მინიმალური კოდის ხაზებით. ასე რომ, ამ განყოფილებაში ჩვენ განვიხილავთ ყველა დეტალს SVG-ს PNG-ად გადაქცევისთვის Java-ს გამოყენებით.
- უპირველეს ყოვლისა, შექმენით ImagingApi კლასის ობიექტი, სადაც არგუმენტად გადავცემთ კლიენტის რწმუნებათა სიგელებს
- მეორეც, წაიკითხეთ SVG სურათის შინაარსი readAllBytes(…) მეთოდის გამოყენებით და დააბრუნეთ ბაიტი[] მასივში.
- შემდეგ შექმენით UploadFileRequest-ის ეგზემპლარი SVG სახელის გადაცემისას და ატვირთეთ იგი ღრუბლოვან საცავში uploadFile(…) მეთოდის გამოყენებით.
- ახლა შექმენით ConvertImageRequest-ის ობიექტი, სადაც გადავცემთ შეყვანის SNG სახელს და შედეგად ფორმატს, როგორც “PNG”.
- გამოიძახეთ convertImage(…) მეთოდი SVG-ზე PNG კონვერტაციის დასაწყებად. გამომავალი შემდეგ ბრუნდება როგორც საპასუხო ნაკადი
- და ბოლოს, შეინახეთ მიღებული 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 სურათი Cloud საცავში
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, როგორც PNG, cURL ბრძანებების გამოყენებით
როგორც Aspose.Imaging Cloud შემუშავებულია REST არქიტექტურის მიხედვით, ასე რომ, მასზე წვდომა მარტივად შეიძლება cURL ბრძანებების საშუალებით. ასე რომ, ამ განყოფილებაში, ჩვენ ვაპირებთ შევინახოთ SVG, როგორც PNG, 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 ჟეტონის გენერირების შემდეგ, გთხოვთ, შეასრულოთ შემდეგი ბრძანება, რომ შეინახოთ 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-ზე Java-ს გამოყენებით. ამავდროულად, ჩვენ ასევე გამოვიკვლიეთ SVG-ის PNG-ად გადაქცევის ვარიანტი cURL ბრძანებების გამოყენებით. გარდა ამისა, თუ გსურთ დაიჭიროთ SDK წყაროს კოდი და შეცვალოთ იგი თქვენი მოთხოვნების შესაბამისად, მისი ჩამოტვირთვა შესაძლებელია GitHub-დან (ჩვენი Cloud SDK შემუშავებულია MIT ლიცენზიით). გთხოვთ, გაითვალისწინოთ, რომ API-ს საოცარი ფუნქციების შესამოწმებლად სხვა ვარიანტია SwaggerUI ვებ ბრაუზერში.
მიუხედავად ამისა, პროდუქტის დოკუმენტაცია არის სტატიების შესანიშნავი საცავი, რომელიც ხსნის API-ის სხვა საინტერესო მახასიათებლებს. და ბოლოს, თუ რაიმე პრობლემას წააწყდებით API-ს გამოყენებისას, შეგიძლიათ დაგვიკავშირდეთ უფასო [პროდუქტის მხარდაჭერის ფორუმის] მეშვეობით 9.
დაკავშირებული სტატიები
ჩვენ გირჩევთ ეწვიოთ შემდეგ ბმულებს მეტის გასაგებად: