JPG v PDF

Naučite se pretvoriti JPG v PDF v Pythonu

Slike JPG ali JPEG so med priljubljenimi rastrskimi slikami, saj uporabljajo zapleten algoritem stiskanja z izgubo, ki uporabnikom omogoča ustvarjanje manjših grafik. Večina naprav, vključno z namiznimi, mobilnimi in drugimi ročnimi napravami, podpira slike JPG. Zdaj, če moramo deliti velike količine slik, se zdi pretvorba JPG v PDF izvedljiva rešitev. V tem članku bomo razpravljali o podrobnostih o tem, kako pretvoriti JPG v PDF v Pythonu.

Nedavno smo razvili brezplačno storitev Besedilo v GIF, ki jo lahko uporabite za ustvarjanje zanimivih animacij iz preprostih besedil.

API za pretvorbo JPG v PDF

Obseg tega članka je omejen na jezik Python, zato bomo poudarili uporabo Aspose.PDF Cloud SDK za Python. Je ovoj okrog API-ja Cloud REST in vam omogoča izvajanje vseh zmožnosti obdelave datotek PDF v aplikacijah Python. Omogoča ustvarjanje, urejanje in pretvorbo datotek PDF v različne podprte formate. Naložite lahko tudi različne datoteke, vključno z EPUB, PS, SVG, XPS, JPEG itd., in jih pretvorite v PDF.

Zdaj je prvi korak namestitev SDK-ja, ki je na voljo za prenos prek repozitorija PIP in GitHub. Prosimo, izvedite naslednji ukaz na terminalu/ukaznem pozivu, da namestite najnovejšo različico SDK v sistem.

 pip install asposepdfcloud

Po namestitvi je naslednji pomemben korak brezplačna naročnina na naše storitve v oblaku prek Aspose.Cloud dashboard. Namen te naročnine je omogočiti samo pooblaščenim osebam dostop do naših storitev obdelave datotek. Če imate račun GitHub ali Google, se preprosto prijavite ali kliknite gumb Ustvari nov račun.

Pretvorite JPG v PDF v Pythonu

Pretvorba z uporabo delčka kode python je zelo priročna. Za izpolnitev te zahteve sledite spodnjim korakom.

  • Najprej ustvarite primerek razreda ApiClient, medtem ko kot argumenta zagotovite ID odjemalca in skrivnost odjemalca
  • Drugič, ustvarite objekt razreda PdfApi, ki sprejme objekt ApiClient kot vhodni argument
  • Tretjič, ustvarite primerek razreda ImageTemplatesRequest, kjer definiramo ime izvorne slike in povezane lastnosti, kot so širina, višina, podrobnosti robov
  • Na koncu pokličite metodo putimageinstoragetopdf(..) razreda PdfApi, da izvedete pretvorbo
# pridobite poverilnice odjemalca iz https://dashboard.aspose.cloud/

def image2PDF():
    try:
        #Client credentials
        client_secret = "1c9379bb7d701c26cc87e741a29987bb"
        client_id = "bbf94a2c-6d7e-4020-b4d2-b9809741374e"

        #initialize PdfApi client instance using client credetials
        pdf_api_client = asposepdfcloud.api_client.ApiClient(client_secret, client_id)

        # ustvarite primerek PdfApi, medtem ko posredujete PdfApiClient kot argument
        pdf_api = PdfApi(pdf_api_client)

        #source image file
        input_file = 'source.jpg'

        #resultant PDF document
        resultant_file = 'Resultant.pdf'

        image_templates_details = asposepdfcloud.ImageTemplatesRequest
        {
            "IsOCR": True,
            "OCRLangs": "eng",
            "ImagesList": [
            {
                "ImagePath": input_file,
                "ImageSrcType": "ImageSrcType.Common",
                "LeftMargin": 10,
                "RightMargin": 10,
                "TopMargin": 10,
                "BottomMargin": 10,
                "PageWidth": 800,
                "PageHeight": 1000,
                "MarginInfo": {
                    "Left": 10,
                    "Right": 10,
                    "Top": 10,
                    "Bottom": 10
                  }
            }
            ]
        }
        
        # pokličite API za pretvorbo slike v format PDF
        response = pdf_api.put_image_in_storage_to_pdf(name=resultant_file, image_templates= image_templates_details)

        # natisni sporočilo v konzoli (neobvezno)
        print('Image successfully converted to PDF format !')    
    except ApiException as e:
        print("Exception while calling PdfApi: {0}".format(e))
        print("Code:" + str(e.code))
        print("Message:" + e.message)

V primeru, da moramo pretvoriti več kot eno sliko v enem klicu, navedite več primerkov ImagesList v objektu ImageTemplatesRequest.

Predogled pretvorbe JPG v PDF

Slika 1: - Predogled pretvorbe JPG v PDF.

JPG v PDF z uporabo ukazov cURL

Ukazi cURL zagotavljajo priročen način za dostop do API-jev REST prek terminala ukazne vrstice. Ker je Aspose.PDF Cloud razvit po arhitekturi REST, lahko do njega dostopamo tudi preko ukazov cURL. Zdaj je prvi korak ustvariti spletni žeton JSON (JWT) na podlagi poverilnic posameznega odjemalca. Zato izvedite naslednji ukaz, da ustvarite žeton JWT.

curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=bbf94a2c-6d7e-4020-b4d2-b9809741374e&client_secret=1c9379bb7d701c26cc87e741a29987bb" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"

Ko je žeton JWT ustvarjen, uporabite naslednji ukaz cURL za pretvorbo JPG v format PDF. Nastala datoteka se nato naloži v shrambo v oblaku.

curl -v -X PUT "https://api.aspose.cloud/v3.0/pdf/Resultant.pdf/create/images" \
-H  "accept: application/json" \
-H  "authorization: Bearer <JWT Token>" \
-H  "Content-Type: application/json" \
-d "{  \"IsOCR\": true,  \"OCRLangs\": \"eng\",  \"ImagesList\": [    {      \"ImagePath\": \"source.jpg\",      \"ImageSrcType\": \"Common\",      \"LeftMargin\": 10,      \"RightMargin\": 10,      \"TopMargin\": 10,      \"BottomMargin\": 10,      \"PageWidth\": 800,      \"PageHeight\": 1000,      \"MarginInfo\": {        \"Left\": 10,        \"Right\": 10,        \"Top\": 10,        \"Bottom\": 10      }    }  ]}"

Za vašo referenco sta izvorna datoteka JPG in nastali dokument PDF naložena v source.jpg in Image2PDF-Resultant.pdf.

Zaključek

V tem članku smo razpravljali o korakih za pretvorbo JPG v PDF z uporabo Pythona. Ob upoštevanju istih navodil lahko pretvorimo tudi slike PNG, BMP in GIF v PDF. Spoznali smo tudi pristop za pretvorbo JPG v PDF z uporabo ukazov cURL. Kljub temu so naši SDK-ji v oblaku razviti pod licenco MIT, zato je njihov celoten delček kode na voljo za brezplačen prenos prek GitHub.

Če imate kakršna koli povezana vprašanja ali naletite na kakršne koli težave pri uporabi naših API-jev, nas kontaktirajte prek brezplačnega foruma za podporo strankam.

povezani članki

Priporočamo tudi, da obiščete naslednje povezave, če želite izvedeti več