ByteScout Watermarking SDK - C# - Use EXIF Macros for Watermarks - ByteScout

ByteScout Watermarking SDK – C# – Use EXIF Macros for Watermarks

  • Home
  • /
  • Articles
  • /
  • ByteScout Watermarking SDK – C# – Use EXIF Macros for Watermarks

How to use EXIF macros for watermarks for annotation macros in C# and ByteScout Watermarking SDK

See how to use EXIF macros for watermarks to have annotation macros in C#

The sample source codes on this page will demonstrate you how to make annotation macros in C#. ByteScout Watermarking SDK was made to help with annotation macros in C#. ByteScout Watermarking SDK is the software development kit that helps to quickly implement adding of watermarks on top of PNG, JPG, BMP images as well as on multipaged TIFF files. You may select ready to use presets or create your own preset with semitransparent logo images, text lines with adjustable font size, family, color, rotation.

Fast application programming interfaces of ByteScout Watermarking SDK for C# plus the instruction and the code below will help to learn how to use EXIF macros for watermarks. For implimentation of this functionality, please copy and paste code below into your app using code editor. Then compile and run your app. Enjoy writing a code with ready-to-use sample C# codes to implement annotation macros using ByteScout Watermarking SDK.

ByteScout Watermarking SDK – free trial version is on available our website. Also, there are other code samples to help you with your C# application included into trial version.

On-demand (REST Web API) version:
 Web API (on-demand version)

On-premise offline SDK for Windows:
 60 Day Free Trial (on-premise)

Program.cs
      
using System; using System.Diagnostics; using System.Drawing; using System.Collections.Generic; using Bytescout.Watermarking; using Bytescout.Watermarking.Presets; namespace Sample { class Program { static void Main(string[] args) { // Create Watermarker instance Watermarker waterMarker = new Watermarker(); // Initialize library waterMarker.InitLibrary("demo", "demo"); // Set input file name string inputFilePath = "my_sample_image.jpg"; // Set output file title string outputFilePath = "my_sample_output.jpg"; // Add image to apply watermarks to waterMarker.AddInputFile(inputFilePath, outputFilePath); // Create new watermark TextAnnotation preset = new TextAnnotation(); // Set text with macros // complete list of available macros please see in the SDK documentation preset.Text = @"Date Time: {{LOCAL_DATE_LONG}} {{LOCAL_TIME}} "+ "\nFilename: {{FILENAME}}\n" + "Manufacturer: {{EXIF_EQUIPMENT_MANUFACTURER}}\n" + "Model: {{EXIF_EQUIPMENT_MODEL}}\n" + "Software: {{EXIF_SOFTWARE_USED}}\n" + "Date/Time: {{EXIF_ORIGINAL_DATE}}\n" + "Exposure Time: {{EXIF_EXPOSURE_TIME}} sec\n" + "Exposure Program: {{EXIF_EXPOSURE_PROGRAM}}\n" + "Exposure Bias: {{EXIF_EXPOSURE_BIAS}} EV\n" + "F Number: F {{EXIF_F_NUMBER}}\n" + "ISO Speed Rating: ISO {{EXIF_ISO_SPEED}}\n" + "Flash: {{EXIF_FLASH}}\n" + "Focal Length: {{EXIF_FOCAL_LENGTH}} mm\n" + "Metering Mode: {{EXIF_METERING_MODE}}"; // Set watermark font preset.Font = new WatermarkFont("Tahoma", FontStyle.Regular, FontSizeType.Percents, 2); // set font size to 2% of the image size waterMarker.OutputOptions.OutputDirectory = "."; // Add watermark to watermarker waterMarker.AddWatermark(preset); // Apply watermarks waterMarker.Execute(); // open generated image file in default image viewer installed in Windows Process.Start(outputFilePath); } } }

ON-PREMISE OFFLINE SDK

60 Day Free Trial or Visit ByteScout Watermarking SDK Home Page

Explore ByteScout Watermarking SDK Documentation

Explore Samples

Sign Up for ByteScout Watermarking SDK Online Training

ON-DEMAND REST WEB API

Get Your API Key

Explore Web API Docs

Explore Web API Samples

VIDEO

ON-PREMISE OFFLINE SDK

60 Day Free Trial or Visit ByteScout Watermarking SDK Home Page

Explore ByteScout Watermarking SDK Documentation

Explore Samples

Sign Up for ByteScout Watermarking SDK Online Training

ON-DEMAND REST WEB API

Get Your API Key

Explore Web API Docs

Explore Web API Samples

Tutorials:

prev
next