00001
00007
00008
00009 #include "NPWInfo.h"
00010
00012 #define Chk(e) \
00013 do { \
00014 err = (e); \
00015 if (err != kNPWErrOk) \
00016 return err; \
00017 } while (0)
00018
00019
00020 NPWErr NPWInfoBegin(NPW *pdf)
00021 {
00022 NPWRef ref;
00023 NPWErr err;
00024
00025 Chk(NPWBeginObj(pdf, &ref));
00026 Chk(NPWWrite(pdf, "<<\n", -1));
00027 pdf->info = ref;
00028 return kNPWErrOk;
00029 }
00030
00031 NPWErr NPWInfoAddEntry(NPW *pdf, NPWConstText key, NPWConstText value)
00032 {
00033 NPWErr err;
00034
00035 Chk(NPWWrite(pdf, "/", -1));
00036 Chk(NPWWrite(pdf, key, -1));
00037 Chk(NPWWrite(pdf, " ", -1));
00038 Chk(NPWWriteString(pdf, value, -1));
00039 Chk(NPWWrite(pdf, "\n", -1));
00040 return kNPWErrOk;
00041 }
00042
00043 NPWErr NPWInfoEnd(NPW *pdf)
00044 {
00045 NPWErr err;
00046
00047 Chk(NPWWrite(pdf, ">>\n", -1));
00048 Chk(NPWEndObj(pdf));
00049 return kNPWErrOk;
00050 }