Pajdeg  0.2.2
Pajdeg
PDString.h
Go to the documentation of this file.
1 //
2 // PDString.h
3 //
4 // Copyright (c) 2012 - 2015 Karl-Johan Alm (http://github.com/kallewoof)
5 //
6 // Permission is hereby granted, free of charge, to any person obtaining a copy
7 // of this software and associated documentation files (the "Software"), to deal
8 // in the Software without restriction, including without limitation the rights
9 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10 // copies of the Software, and to permit persons to whom the Software is
11 // furnished to do so, subject to the following conditions:
12 //
13 // The above copyright notice and this permission notice shall be included in
14 // all copies or substantial portions of the Software.
15 //
16 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19 // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
22 // THE SOFTWARE.
23 //
24 
39 #ifndef INCLUDED_PDSTRING_H
40 #define INCLUDED_PDSTRING_H
41 
42 #include "PDDefines.h"
43 
54 extern PDStringRef PDStringCreate(char *string);
55 
63 extern PDStringRef PDStringCreateUnescaped(char *unescapedString);
64 
72 extern PDStringRef PDStringCreateWithName(char *name);
73 
84 extern PDStringRef PDStringCreateBinary(char *data, PDSize length);
85 
96 
111 extern PDStringRef PDStringCreateFromStringWithType(PDStringRef string, PDStringType type, PDBool wrap, PDBool requireCopy);
112 
123 
134 
142 extern PDStringRef PDStringCopy(PDStringRef string);
143 
151 extern PDStringEncoding PDStringEncodingGetByName(const char *encodingName);
152 
161 extern void PDStringSetEncoding(PDStringRef string, PDStringEncoding encoding);
162 
174 extern void PDStringSetFont(PDStringRef string, PDFontRef font);
175 
185 extern void PDStringForceWrappedState(PDStringRef string, PDBool wrapped);
186 
194 #define PDStringCreateBinaryFromString(string) PDStringCreateFromStringWithType(string, PDStringTypeBinary, false, false)
195 
196 //#define PDStringWithUnescapedCString(unescapedCString) PDAutorelease(PDStringCreateBinary(unescapedCString, strlen(unescapedCString)))
197 
198 #define PDStringEscapingCString(unescapedCString) PDAutorelease(PDStringCreateUnescaped(unescapedCString))
199 
200 #define PDStringWithCString(cString) PDAutorelease(PDStringCreate(cString))
201 
202 #define PDStringWithName(name) PDAutorelease(PDStringCreateWithName(name))
203 
216 extern const char *PDStringEscapedValue(PDStringRef string, PDBool wrap);
217 
230 extern const char *PDStringNameValue(PDStringRef string, PDBool wrap);
231 
244 extern const char *PDStringBinaryValue(PDStringRef string, PDSize *outLength);
245 
257 extern const char *PDStringHexValue(PDStringRef string, PDBool wrap);
258 
259 extern PDBool PDStringEqualsCString(PDStringRef string, const char *cString);
260 
269 extern PDBool PDStringEqualsString(PDStringRef string, PDStringRef string2);
270 
271 extern PDBool PDStringIsWrapped(PDStringRef string);
272 
273 extern PDStringType PDStringGetType(PDStringRef string);
274 
275 extern PDStringEncoding PDStringGetEncoding(PDStringRef string);
276 
277 #ifdef PD_SUPPORT_CRYPTO
278 
286 extern PDBool PDStringIsEncrypted(PDStringRef string);
287 
298 extern void PDStringAttachCrypto(PDStringRef string, pd_crypto crypto, PDInteger objectID, PDInteger genNumber, PDBool encrypted);
299 
310 
321 
328 
336 extern const char **PDStringLatinRCharsetArray(void);
337 
338 extern const unsigned char PDStringLatinPDFToWin[];
339 
340 extern PDInteger PDStringPrinter(void *inst, char **buf, PDInteger offs, PDInteger *cap);
341 
342 #endif // PD_SUPPORT_CRYPTO
343 
344 #endif // INCLUDED_PDSTRING_H
345 
const char ** PDStringLatinRCharsetArray(void)
Definition: PDStringUTF.c:404
PDStringRef PDStringCreateWithHexString(char *hex)
Definition: PDString.c:165
PDStringRef PDStringCreate(char *string)
Definition: PDString.c:84
const char * PDStringBinaryValue(PDStringRef string, PDSize *outLength)
Definition: PDString.c:351
const char * PDStringEscapedValue(PDStringRef string, PDBool wrap)
Definition: PDString.c:270
long PDInteger
Definition: PDDefines.h:184
unsigned char PDBool
Definition: PDDefines.h:207
void PDStringForceWrappedState(PDStringRef string, PDBool wrapped)
Definition: PDString.c:248
PDStringRef PDStringCreateUTF16Encoded(PDStringRef string)
Definition: PDStringUTF.c:377
const char * PDStringNameValue(PDStringRef string, PDBool wrap)
Definition: PDString.c:312
PDStringEncoding PDStringEncodingGetByName(const char *encodingName)
Definition: PDStringUTF.c:159
PDStringRef PDStringCreateUTF8Encoded(PDStringRef string)
Definition: PDStringUTF.c:359
PDStringRef PDStringCreateFromStringWithType(PDStringRef string, PDStringType type, PDBool wrap, PDBool requireCopy)
Definition: PDString.c:204
void PDStringSetFont(PDStringRef string, PDFontRef font)
Definition: PDStringUTF.c:175
PDStringRef PDStringCreateDecrypted(PDStringRef string)
Definition: PDString.c:804
size_t PDSize
Definition: PDDefines.h:213
PDStringRef PDStringCreateEncrypted(PDStringRef string)
Definition: PDString.c:788
PDBool PDStringIsEncrypted(PDStringRef string)
Definition: PDString.c:770
PDStringEncoding
Definition: PDDefines.h:656
PDStringRef PDStringCreateUnescaped(char *unescapedString)
Definition: PDString.c:104
void PDStringAttachCrypto(PDStringRef string, pd_crypto crypto, PDInteger objectID, PDInteger genNumber, PDBool encrypted)
Definition: PDString.c:775
Definition: pd_internal.h:718
Definition: pd_internal.h:639
Definition: pd_internal.h:672
Definition: pd_internal.h:887
PDStringType
Definition: PDDefines.h:649
Definitions for the Pajdeg interface.
PDStringRef PDStringCreateWithName(char *name)
Definition: PDString.c:116
PDStringRef PDStringCreateBinary(char *data, PDSize length)
Definition: PDString.c:145
PDStringRef PDStringCopy(PDStringRef string)
Definition: PDString.c:184
const char * PDStringHexValue(PDStringRef string, PDBool wrap)
Definition: PDString.c:389
void PDStringSetEncoding(PDStringRef string, PDStringEncoding encoding)
Definition: PDStringUTF.c:170
PDBool PDStringEqualsString(PDStringRef string, PDStringRef string2)
Definition: PDString.c:733
PDDictionaryRef PDStringLatinCharsetDict(void)
Definition: PDStringUTF.c:434