forked from dlemstra/Magick.NET
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathIMagickNET.cs
More file actions
159 lines (133 loc) · 5.57 KB
/
Copy pathIMagickNET.cs
File metadata and controls
159 lines (133 loc) · 5.57 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
// Copyright Dirk Lemstra https://github.com/dlemstra/Magick.NET.
// Licensed under the Apache License, Version 2.0.
using System;
using System.Collections.Generic;
using System.IO;
using ImageMagick.Configuration;
namespace ImageMagick;
/// <summary>
/// Interface that represents MagickNET.
/// </summary>
public interface IMagickNET
{
/// <summary>
/// Event that will be raised when something is logged by ImageMagick.
/// </summary>
event EventHandler<LogEventArgs> Log;
/// <summary>
/// Gets the ImageMagick delegate libraries.
/// </summary>
string Delegates { get; }
/// <summary>
/// Gets the ImageMagick features.
/// </summary>
string Features { get; }
/// <summary>
/// Gets the information about the supported formats.
/// </summary>
IReadOnlyCollection<IMagickFormatInfo> SupportedFormats { get; }
/// <summary>
/// Gets the font families that are known by ImageMagick.
/// </summary>
IReadOnlyCollection<string> FontFamilies { get; }
/// <summary>
/// Gets the font names that are known by ImageMagick.
/// </summary>
IReadOnlyCollection<string> FontNames { get; }
/// <summary>
/// Gets the version of ImageMagick.
/// </summary>
string ImageMagickVersion { get; }
/// <summary>
/// Gets the version of Magick.NET.
/// </summary>
string Version { get; }
/// <summary>
/// Gets the environment variable with the specified name.
/// </summary>
/// <param name="name">The name of the environment variable.</param>
/// <returns>The environment variable with the specified name.</returns>
string? GetEnvironmentVariable(string name);
/// <summary>
/// Initializes ImageMagick.
/// </summary>
void Initialize();
/// <summary>
/// Initializes ImageMagick with the xml files that are located in the specified path.
/// </summary>
/// <param name="path">The path that contains the ImageMagick xml files.</param>
void Initialize(string path);
/// <summary>
/// Initializes ImageMagick with the specified configuration files and returns the path to the
/// temporary directory where the xml files were saved.
/// </summary>
/// <param name="configFiles">The configuration files ot initialize ImageMagick with.</param>
/// <returns>The path of the folder that was created and contains the configuration files.</returns>
string Initialize(IConfigurationFiles configFiles);
/// <summary>
/// Initializes ImageMagick with the specified configuration files in the specified the path.
/// </summary>
/// <param name="configFiles">The configuration files ot initialize ImageMagick with.</param>
/// <param name="path">The directory to save the configuration files in.</param>
void Initialize(IConfigurationFiles configFiles, string path);
/// <summary>
/// Resets the pseudo-random number generator secret key.
/// </summary>
void ResetRandomSeed();
/// <summary>
/// Set the path to the default font file.
/// </summary>
/// <param name="file">The file to use at the default font file.</param>
void SetDefaultFontFile(FileInfo file);
/// <summary>
/// Set the path to the default font file.
/// </summary>
/// <param name="fileName">The file name to use at the default font file.</param>
void SetDefaultFontFile(string fileName);
/// <summary>
/// Set the environment variable with the specified name to the specified value.
/// </summary>
/// <param name="name">The name of the environment variable.</param>
/// <param name="value">The value of the environment variable.</param>
void SetEnvironmentVariable(string name, string value);
/// <summary>
/// Sets the directory that contains the FontConfig configuration files.
/// </summary>
/// <param name="path">The path of the FontConfig directory.</param>
void SetFontConfigDirectory(string path);
/// <summary>
/// Sets the directory that contains the Ghostscript file gsdll32.dll / gsdll64.dll.
/// This method is only supported on Windows.
/// </summary>
/// <param name="path">The path of the Ghostscript directory.</param>
void SetGhostscriptDirectory(string path);
/// <summary>
/// Sets the directory that contains the Ghostscript font files.
/// This method is only supported on Windows.
/// </summary>
/// <param name="path">The path of the Ghostscript font directory.</param>
void SetGhostscriptFontDirectory(string path);
/// <summary>
/// Set the events that will be written to the log. The log will be written to the Log event
/// and the debug window in VisualStudio. To change the log settings you must use a custom
/// log.xml file.
/// </summary>
/// <param name="events">The events that will be logged.</param>
void SetLogEvents(LogEvents events);
/// <summary>
/// Sets the directory that contains the Native library. This currently only works on Windows.
/// </summary>
/// <param name="path">The path of the directory that contains the native library.</param>
void SetNativeLibraryDirectory(string path);
/// <summary>
/// Sets the directory that will be used when ImageMagick does not have enough memory for the
/// pixel cache.
/// </summary>
/// <param name="path">The path where temp files will be written.</param>
void SetTempDirectory(string path);
/// <summary>
/// Sets the pseudo-random number generator secret key.
/// </summary>
/// <param name="seed">The secret key.</param>
void SetRandomSeed(int seed);
}