Save images in C#
To save a previously loaded GdPicture image to a remote URL, use the SaveToHTTP method of the GdPictureImaging class.
SaveToHTTP uploads the image using HTTP PUT.
Main parameters:
imageID— The GdPicture image identifier.ImageFormat— Output format as a member of theDocumentFormatenumeration.EncoderParameter— Encoding/compression parameter (depends on format).Address— Destination URL.Login/Password(optional) — Credentials for authenticated endpoints.
SaveToHTTP returns a GdPictureStatus, which should be checked.
In some environments, network/DNS failures for SaveToHTTP(...) may surface as runtime transfer exceptions (for example, host resolution errors) instead of only a non-OK GdPictureStatus. We recommend wrapping remote upload calls in try/catch in addition to checking GdPictureStatus.
Typical EncoderParameter values:
- JPEG — Quality
1to100 - PNG — Compression level
0to9 - TIFF — Values from
TiffCompressionenumeration - JPEG2000 — Compression rate
1to512 - WebP — Quality
1to100 - Other formats — Usually
0
When you no longer need an image resource, release it with the ReleaseGdPictureImage method.
When transferring data to or from remote servers, you can optionally use the SetHttpTransferBufferSize method to specify transfer buffer size.
The following example saves a previously loaded JPG image to a remote URL:
using GdPicture14;using System;
using GdPictureImaging gdPictureImaging = new GdPictureImaging();
int imageID = gdPictureImaging.CreateGdPictureImageFromFile(@"C:\temp\source.jpg");if (imageID == 0){ Console.WriteLine($"CreateGdPictureImageFromFile failed: {gdPictureImaging.GetStat()}"); return;}
gdPictureImaging.SetHttpTransferBufferSize(2048);
GdPictureStatus status = gdPictureImaging.SaveToHTTP( imageID, DocumentFormat.DocumentFormatJPEG, 75, "https://pspdfkit.com/uploads/source.jpg");
if (status != GdPictureStatus.OK){ Console.WriteLine($"SaveToHTTP failed: {status}");}
gdPictureImaging.ReleaseGdPictureImage(imageID);Imports GdPicture14
Using gdPictureImaging As New GdPictureImaging() Dim imageID As Integer = gdPictureImaging.CreateGdPictureImageFromFile("C:\temp\source.jpg") If imageID = 0 Then Console.WriteLine($"CreateGdPictureImageFromFile failed: {gdPictureImaging.GetStat()}") Return End If
gdPictureImaging.SetHttpTransferBufferSize(2048)
Dim status As GdPictureStatus = gdPictureImaging.SaveToHTTP( imageID, DocumentFormat.DocumentFormatJPEG, 75, "https://pspdfkit.com/uploads/source.jpg")
If status <> GdPictureStatus.OK Then Console.WriteLine($"SaveToHTTP failed: {status}") End If
gdPictureImaging.ReleaseGdPictureImage(imageID)End Using