1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-12-24 04:33:24 +00:00

Cleanup ghostscript-gnu-commfont and related CJK font support meta ports.

Changes include:

 - Set WITH_GHOSTSCRIPT_GNU forcibly.

 - Use PostScript virtual fonts to handle CJK CID/TT-CID emulated fonts.
   CIDFnmap still works but when a font is both in Resource/Font or
   Resource/CIDFont and in CIDFnmap, the former entry will be used.
   For the actual font mapping, see files in Resource/CIDFont/*.

   So, note that you need to remove (or rename) the virtual font if you use
   CIDFnmap for the moment.  This is still a transitional measure and
   more consistent font management thoughout the ports collection should
   be added later.

   This is just an internal structural change; default font mapping has
   not been changed.

 - Add Chinese font support to print/gsfonts (but no dependency added).
This commit is contained in:
Hiroki Sato 2007-04-28 13:03:16 +00:00
parent 77f3442b27
commit 4046a765ca
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=191064
35 changed files with 2554 additions and 693 deletions

View File

@ -6,6 +6,21 @@ You should get into the habit of checking this file for changes each
time you update your ports collection, before attempting any port
upgrades.
20070428:
AFFECTS: users of print/ghostscript-gnu-{commfont,jpnfont,korfont}
AUTHOR: hrs@FreeBSD.org
These ports now use PostScript virtual fonts to handle CJK CID/TT-CID
emulated fonts. CIDFnmap still works but note that if a font
is both in Resource/Font or Resource/CIDFont and in CIDFnmap,
the entry in Resource/* will be used. For the actual font mapping, see
files in Resource/CIDFont/*. This is just an internal structural
change; default font mapping has not been changed.
If you use CIDFnmap to change a font mapping already defined by
Resource/CIDFont/foo, you have to remove (or rename) the
Resource/CIDFont/foo file first.
20070423:
AFFECTS: users of www/p5-Kwiki
AUTHORS: clsung@FreeBSD.org

View File

@ -5,11 +5,26 @@
# $FreeBSD$
#
MASTERDIR= ${.CURDIR}/../../print/ghostscript-gnu-commfont
PORTREVISION= 3
PORTNAME= ghostscript-gnu-jpnfont
PORTVERSION= 7.07
PORTREVISION= 4
CATEGORIES= japanese print
MASTER_SITES= # empty
DISTFILES= # empty
.undef COMMFONT
MAINTAINER= hrs@FreeBSD.org
COMMENT= Japanese font support for GNU Ghostscript
JPNFONT= yes
RUN_DEPENDS= ${LOCALBASE}/share/fonts/TrueType/ipam.ttf:${PORTSDIR}/japanese/ipa-ttfonts \
${LOCALBASE}/share/ghostscript/Resource/CIDFont/Ryumin-Light:${PORTSDIR}/print/ghostscript-gnu-commfont
.include "${MASTERDIR}/Makefile.common"
# set these forcibly
WITH_GHOSTSCRIPT_GNU= yes
USE_GHOSTSCRIPT_RUN= yes
NO_BUILD= yes
DEPENDS_ARGS+= -DA4
do-install:
@${DO_NADA}
.include <bsd.port.mk>

View File

@ -0,0 +1 @@
This is a meta package to add Japanese font support to GNU Ghostscript.

View File

@ -5,12 +5,26 @@
# $FreeBSD$
#
MASTERDIR= ${.CURDIR}/../../print/ghostscript-gnu-commfont
PORTREVISION= 1
PORTNAME= ghostscript-gnu-korfont
PORTVERSION= 7.07
PORTREVISION= 2
CATEGORIES= korean print
MASTER_SITES= # empty
DISTFILES= # empty
.undef COMMFONT
MAINTAINER= hrs@FreeBSD.org
COMMENT= Korean font support for GNU Ghostscript
KORFONT= yes
RUN_DEPENDS= ${LOCALBASE}/share/fonts/CIDFont/Munhwa-Regular:${PORTSDIR}/korean/munhwafonts-cid \
${LOCALBASE}/share/ghostscript/Resource/CIDFont/HYSMyeongJo-Medium:${PORTSDIR}/print/ghostscript-gnu-commfont
.include "${MASTERDIR}/Makefile.common"
# set these forcibly
WITH_GHOSTSCRIPT_GNU= yes
USE_GHOSTSCRIPT_RUN= yes
NO_BUILD= yes
DEPENDS_ARGS+= -DA4
do-install:
@${DO_NADA}
.include <bsd.port.mk>

View File

@ -0,0 +1 @@
This is a meta package to add Korean font support to GNU Ghostscript.

View File

@ -5,9 +5,40 @@
# $FreeBSD$
#
MASTERDIR= ${.CURDIR}
PORTREVISION= 3
PORTNAME= ghostscript-gnu-commfont
PORTVERSION= 7.07
PORTREVISION= 4
CATEGORIES= print
MASTER_SITES= # empty
DISTFILES= # empty
COMMFONT= yes
MAINTAINER= hrs@FreeBSD.org
COMMENT= Common files for GNU Ghostscript CJK font support
.include "${MASTERDIR}/Makefile.common"
RUN_DEPENDS= ${CMAPDIR}/ac15/cid2code.txt:${PORTSDIR}/print/adobe-cmaps
NO_WRKSUBDIR= yes
SUB_FILES= pkg-message \
Makefile template.cidfont template.ttcidfont template.font
SUB_LIST= PORTVERSION="${PORTVERSION}" GS_RESDIR="${GS_RESDIR}"
PLIST_SUB= GS_RESDIR="${GS_RESDIR}"
PKGMESSAGE= ${WRKDIR}/pkg-message
DEPENDS_ARGS+= -DA4
# set these forcibly
USE_GHOSTSCRIPT= yes
WITH_GHOSTSCRIPT_GNU= yes
CONFLICTS= ghostscript-afpl-[0-9]* \
ghostscript-afpl-nox11-[0-9]* \
ghostscript-gpl-[0-9]* \
ghostscript-gpl-nox11-[0-9]*
CMAPDIR?= ${LOCALBASE}/share/fonts/adobe-cmaps
GS_RESDIR?= share/ghostscript/Resource
post-extract: apply-slist
post-install:
@${CAT} ${PKGMESSAGE}
.include <bsd.port.mk>

View File

@ -1,81 +0,0 @@
# $FreeBSD$
PORTNAME= ghostscript
PORTVERSION= ${GS_VERSION}
CATEGORIES= print
MASTER_SITES= # nonexistent
PKGNAMESUFFIX= -gnu
DISTNAME= # nonexistent
DISTFILES= # empty
MAINTAINER?= ports@FreeBSD.org
COMMENT?= GNU ghostscript with CJK font support
RUN_DEPENDS= gs:${PORTSDIR}/print/ghostscript-gnu \
${CMAPDIR}/ac15/cid2code.txt:${PORTSDIR}/print/adobe-cmaps
NO_BUILD= yes
NO_WRKSUBDIR= yes
GSLIB_DIR= share/ghostscript/${PORTVERSION}/lib
GSRES_DIR= share/ghostscript/Resource
CMAPDIR= ${LOCALBASE}/share/fonts/adobe-cmaps
PLIST_SUB= GS_VERSION=${PORTVERSION} SHAREMODE=${SHAREMODE}
.if defined(COMMFONT)
PKGNAMESUFFIX:= ${PKGNAMESUFFIX}-commfont
PLIST= ${PKGDIR}/pkg-plist.common
PLIST_SUB+= GSRES_DIR=${GSRES_DIR}
.else
RUN_DEPENDS+= ${LOCALBASE}/share/ghostscript/${PORTVERSION}/lib/gs_init.ps.pre_sed:${PORTSDIR}/print/ghostscript-gnu-commfont
PLIST_SUB+= CIDFNMAP="${CIDFNMAP}"
.if defined(JPNFONT)
CATEGORIES:= japanese ${CATEGORIES}
COMMENT= GNU ghostscript with Japanese font support
PKGNAMEPREFIX= ja-
PKGNAMESUFFIX:= ${PKGNAMESUFFIX}-jpnfont
RUN_DEPENDS+= ${LOCALBASE}/share/fonts/TrueType/ipam.ttf:${PORTSDIR}/japanese/ipa-ttfonts
CIDFNMAP= CIDFnmap.jp
.elif defined(KORFONT)
CATEGORIES:= korean ${CATEGORIES}
COMMENT= GNU ghostscript with Korean font support
PKGNAMEPREFIX= ko-
PKGNAMESUFFIX:= ${PKGNAMESUFFIX}-korfont
RUN_DEPENDS+= ${LOCALBASE}/share/fonts/CIDFont/Munhwa-Bold:${PORTSDIR}/korean/munhwafonts-cid
CIDFNMAP= CIDFnmap.ko
.endif
.endif
.include <bsd.port.pre.mk>
.if !defined(COMMFONT)
SUB_FILES+= ${CIDFNMAP}
.endif
do-install:
.if defined(COMMFONT)
${MKDIR} -p ${PREFIX}/${GSRES_DIR}/CMap
cd ${PREFIX}/${GSRES_DIR}/CMap && \
${LN} -s -f `${FIND} ${CMAPDIR} -type f -a \! -name \*.txt` .
${MV} ${PREFIX}/${GSLIB_DIR}/gs_init.ps ${PREFIX}/${GSLIB_DIR}/gs_init.ps.pre_sed
${SED} -e "s:^%.*(a4):(a4):" ${PREFIX}/${GSLIB_DIR}/gs_init.ps.pre_sed > \
${PREFIX}/${GSLIB_DIR}/gs_init.ps
.else
${INSTALL_DATA} ${WRKSRC}/${CIDFNMAP} ${PREFIX}/${GSLIB_DIR}
${CP} ${PREFIX}/${GSLIB_DIR}/CIDFnmap ${PREFIX}/${GSLIB_DIR}/CIDFnmap.orig
( ${GREP} -v -e "${CIDFNMAP}" ${PREFIX}/${GSLIB_DIR}/CIDFnmap.orig;\
${ECHO_CMD} '(${CIDFNMAP}) .runlibfile'; \
) > ${PREFIX}/${GSLIB_DIR}/CIDFnmap
.endif
.if defined(KORFONT)
post-install:
${MKDIR} ${LOCALBASE}/share/ghostscript/Resource/CIDFont
.for i in Munhwa-Bold Munhwa-Regular MunhwaGothic-Bold MunhwaGothic-Regular
${LN} -sf ${LOCALBASE}/share/fonts/CIDFont/${i} \
${LOCALBASE}/share/ghostscript/Resource/CIDFont/${i}
${ECHO_CMD} "share/ghostscript/Resource/CIDFont/${i}" >> ${TMPPLIST}
${ECHO_CMD} "@unexec /bin/rmdir %D/share/ghostscript/Resource/CIDFont 2> /dev/null || true" >> ${TMPPLIST}
.endfor
.endif
.include "${PORTSDIR}/print/ghostscript-gnu/Makefile.inc"
.include <bsd.port.post.mk>

View File

@ -1,23 +0,0 @@
% $FreeBSD$
% Japanese Truetype Fonts
/Default-Mincho (%%LOCALBASE%%/share/fonts/TrueType/ipam.ttf) 1 ;
/Default-Gothic (%%LOCALBASE%%/share/fonts/TrueType/ipag.ttf) 1 ;
%
% Convenient aliases for PS files on Japanese PostScript printer
%
/Adobe-Japan1 /Default-Mincho ;
/Ryumin-Light /Default-Mincho ;
/Ryumin-Light-H /Default-Mincho ;
/Ryumin-Light-V /Default-Mincho ;
/GothicBBB-Medium /Default-Gothic ;
/GothicBBB-Medium-H /Default-Gothic ;
/GothicBBB-Medium-V /Default-Gothic ;
/HeiseiMin-W3H /Default-Mincho ;
/HeiseiKakuGo-W5H /Default-Gothic ;
/FutoMinA101-Bold /Default-Mincho ;
/FutoMinA101-Bold-H /Default-Mincho ;
/FutoMinA101-Bold-V /Default-Mincho ;
/FutoGoB101-Bold /Default-Gothic ;
/FutoGoB101-Bold-H /Default-Gothic ;
/FutoGoB101-Bold-V /Default-Gothic ;

View File

@ -1,9 +0,0 @@
% $FreeBSD$
/Adobe-Korea1 /Munhwa-Regular ;
%
% Convenient aliases for PS files on Korean PostScript printer
%
/HYGoThic-Medium /MunhwaGothic-Regular ;
/HYSMyeongJo-Medium /Munhwa-Regular ;
/HYRGoThic-Medium /MunhwaGothic-Bold ;

View File

@ -0,0 +1,140 @@
# $FreeBSD$
PREFIX?= /usr/local
LOCALBASE?= /usr/local
CMAPDIR?= ${LOCALBASE}/share/fonts/adobe-cmaps
CIDFONTDIR?= ${LOCALBASE}/share/fonts/CIDFont
GS_FONTDIR?= ${LOCALBASE}/share/ghostscript/fonts
GS_RESFONTDIR?= ${LOCALBASE}/share/ghostscript/Resource/Font
GS_RESCIDFONTDIR?= ${LOCALBASE}/share/ghostscript/Resource/CIDFont
GS_RESCMAPDIR?= ${LOCALBASE}/share/ghostscript/Resource/CMap
INSTALL_DATA?= install -m 444
MKDIR?= mkdir -p
LN?= ln
FIND?= find
AWK?= awk
R?= 
PROGRESS?= BEGIN { mark[0]=\"|\"; mark[1]=\"|\"; mark[2]=\"/\"; mark[3]=\"/\"; mark[4]=\"-\"; mark[5]=\"-\"; mark[6]=\"\\\\\"; mark[7]=\"\\\\\"; line = 0; } { line = (line + 1) % 8; printf(\"Generating virtual fonts...%s${R}\n\", mark[line]); }
TEMPLATES_TTF= cs.serif cs.sansserif \
ct.serif cs.sansserif \
ja.serif ja.sansserif
TEMPLATES_CID= ko.serif ko.sansserif
CS.CMAPS= ac15
CS.SERIF.GENERIC= STSong-Light
CS.SERIF.GENERIC_SUBST= STSong-Light.ttf
CS.SERIF= STSong-Light
CS.SANSSERIF.GENERIC= STHeiti-Regular
CS.SANSSERIF.GENERIC_SUBST= STHeiti-Regular.ttf
CS.SANSSERIF= STHeiti-Regular
CT.CMAPS= ag15
CT.SERIF.GENERIC= MSung-Light
CT.SERIF.GENERIC_SUBST= MSung-Light.ttf
CT.SERIF= MSung-Light
CT.SANSSERIF.GENERIC= MHei-Medium
CT.SANSSERIF.GENERIC_SUBST= MHei-Medium.ttf
CT.SANSSERIF= MHei-Medium
JA.CMAPS= aj16 aj20
JA.SERIF.GENERIC= Ryumin-Light
JA.SERIF.GENERIC_SUBST= Ryumin-Light.ttf
JA.SERIF= Ryumin-Light \
FutoMinA101-Bold \
HeiseiMin-W3
JA.SANSSERIF.GENERIC= GothicBBB-Medium
JA.SANSSERIF.GENERIC_SUBST= GothicBBB-Medium.ttf
JA.SANSSERIF= GothicBBB-Medium \
FutoGoB101-Bold \
HeiseiKakuGo-W5 \
HGSSoeiKakugothicUB \
HGPSoeiKakugothicUB
KO.CMAPS= ak12
KO.SERIF.GENERIC= HYSMyeongJo-Medium
KO.SERIF.GENERIC_SUBST= Munhwa-Regular
KO.SERIF= HYSMyeongJo-Medium
KO.SANSSERIF.GENERIC= HYGoThic-Medium
KO.SANSSERIF.GENERIC_SUBST= MunhwaGothic-Regular
KO.SANSSERIF= HYGoThic-Medium
all:
@${MKDIR} CIDFont Font
.for T in ${TEMPLATES_TTF}
@for F in ${${T:U}}; do \
echo "Generating CIDFont/$${F}"; \
sed -e "s,%%FONTNAME%%,$$F,g" \
-e "s,%%GS_FONTDIR%%,${GS_FONTDIR}," \
-e "s,%%GENERICFONTNAME%%,${${T:U}.GENERIC}," \
-e "s,%%GENERICFONTNAME_SUBST%%,${${T:U}.GENERIC_SUBST}," \
< template.ttcidfont > CIDFont/$${F}; \
for D in ${${T:U:C/\.[^.]*$//}.CMAPS}; do \
if [ -d ${CMAPDIR}/$${D}/CMap ]; then \
CMAPS=`cd ${CMAPDIR}/$${D}/CMap; echo *`; \
elif [ -r ${CMAPDIR}/$${D} ]; then \
CMAPS=`basename $${D}`; \
else \
echo "$${D}: not found"; exit 1; \
fi; \
for C in $${CMAPS}; do \
echo "Generating Font/$${F}-$${C}"; \
sed -e "s,%%FONTNAME%%,$$F,g" \
-e "s,%%GS_FONTDIR%%,${GS_FONTDIR}," \
-e "s,%%CMAPNAME%%,$${C}," \
-e "s,%%GENERICFONTNAME%%,${${T:U}.GENERIC}," \
-e "s,%%GENERICFONTNAME_SUBST%%,${${T:U}.GENERIC_SUBST}," \
< template.font > Font/$${F}-$${C}; \
done; \
done; \
done | awk "${PROGRESS}"
.endfor
.for T in ${TEMPLATES_CID}
@for F in ${${T:U}}; do \
echo "Generating CIDFont/$${F}"; \
sed -e "s,%%FONTNAME%%,$$F,g" \
-e "s,%%GS_FONTDIR%%,${GS_FONTDIR}," \
-e "s,%%GENERICFONTNAME%%,${${T:U}.GENERIC}," \
-e "s,%%GENERICFONTNAME_SUBST%%,${${T:U}.GENERIC_SUBST}," \
< template.cidfont > CIDFont/$${F}; \
for D in ${${T:U:C/\.[^.]*$//}.CMAPS}; do \
if [ -d ${CMAPDIR}/$${D}/CMap ]; then \
CMAPS=`cd ${CMAPDIR}/$${D}/CMap; echo *`; \
elif [ -r ${CMAPDIR}/$${D} ]; then \
CMAPS=`basename $${D}`; \
else \
echo "$${D}: not found"; exit 1; \
fi; \
for C in $${CMAPS}; do \
echo "Generating Font/$${F}-$${C}"; \
sed -e "s,%%FONTNAME%%,$$F,g" \
-e "s,%%GS_FONTDIR%%,${GS_FONTDIR}," \
-e "s,%%CMAPNAME%%,$${C}," \
-e "s,%%GENERICFONTNAME%%,${${T:U}.GENERIC}," \
-e "s,%%GENERICFONTNAME_SUBST%%,${${T:U}.GENERIC_SUBST}," \
< template.font > Font/$${F}-$${C}; \
done; \
done; \
done | awk "${PROGRESS}"
.endfor
@echo "Generating virtual fonts...done."
install:
${MKDIR} ${GS_RESCIDFONTDIR}
${INSTALL_DATA} CIDFont/* ${GS_RESCIDFONTDIR}
${MKDIR} ${GS_RESFONTDIR}
${INSTALL_DATA} Font/* ${GS_RESFONTDIR}
${MKDIR} ${GS_RESCMAPDIR}
cd ${GS_RESCMAPDIR} && ${LN} -s -f `${FIND} ${CMAPDIR} -type f` .
.for T in ${TEMPLATES_CID}
cd ${GS_RESCIDFONTDIR} && ${LN} -s -f ${CIDFONTDIR}/${${T:U}.GENERIC_SUBST} ${${T:U}.GENERIC_SUBST}
.endfor

View File

@ -0,0 +1,14 @@
=== NOTE ===
The CJK font selection will be performed in the following order:
1. %%PREFIX%%/%%GS_RESDIR%%/Font/<fontname>
2. %%PREFIX%%/%%GS_RESDIR%%/CIDFont/<fontname>
3. %%PREFIX%%/share/ghostscript/%%PORTVERSION%%/lib/CIDFnmap
So, to use CIDFnmap you have to make sure that there is no font file that
has the same name as you want to customize in Resource/Font and
Resource/CIDFont.

View File

@ -0,0 +1,10 @@
%!PS-Adobe-3.0 Resource-CIDFont
%%Creator: $FreeBSD$
%%BeginResource: CIDFont (%%FONTNAME%%)
(%%FONTNAME%%)
(%%GENERICFONTNAME_SUBST%%) /CIDFont findresource
/CIDFont defineresource pop
%%EndResource
%%EOF

View File

@ -0,0 +1,12 @@
%!PS-Adobe-3.0 Resource-Font
%%Creator: $FreeBSD$
%%DocumentNeededResources: %%CMAPNAME%% (CMap)
%%IncludeResource: %%CMAPNAME%% (CMap)
%%BeginResource: Font (%%FONTNAME%%-%%CMAPNAME%%)
(%%FONTNAME%%-%%CMAPNAME%%)
(%%CMAPNAME%%) /CMap findresource
[(%%GENERICFONTNAME%%) /CIDFont findresource]
composefont
pop
%%EndResource
%%EOF

View File

@ -0,0 +1,10 @@
%!PS-Adobe-3.0 Resource-CIDFont
%%Creator: $FreeBSD$
%%BeginResource: CIDFont (%%FONTNAME%%)
(%%FONTNAME%%)
(%%GENERICFONTNAME_SUBST%%) findlibfile pop pop .openttcidfont
/CIDFont defineresource pop
%%EndResource
%%EOF

View File

@ -1 +1,2 @@
Ghostscript CJK font resources
This is a virtual CJK font set for GNU Ghostscript. These virtual fonts
call several TrueType Japanese/Korean/Chinese fonts as the real instances.

File diff suppressed because it is too large Load Diff

View File

@ -1,206 +0,0 @@
@comment $FreeBSD$
%%GSRES_DIR%%/CMap/Adobe-CNS1-0
%%GSRES_DIR%%/CMap/Adobe-CNS1-1
%%GSRES_DIR%%/CMap/Adobe-CNS1-2
%%GSRES_DIR%%/CMap/Adobe-CNS1-3
%%GSRES_DIR%%/CMap/Adobe-CNS1-4
%%GSRES_DIR%%/CMap/Adobe-CNS1-5
%%GSRES_DIR%%/CMap/B5-H
%%GSRES_DIR%%/CMap/B5-V
%%GSRES_DIR%%/CMap/B5pc-H
%%GSRES_DIR%%/CMap/B5pc-V
%%GSRES_DIR%%/CMap/CNS-EUC-H
%%GSRES_DIR%%/CMap/CNS-EUC-V
%%GSRES_DIR%%/CMap/CNS1-H
%%GSRES_DIR%%/CMap/CNS1-V
%%GSRES_DIR%%/CMap/CNS2-H
%%GSRES_DIR%%/CMap/CNS2-V
%%GSRES_DIR%%/CMap/ETen-B5-H
%%GSRES_DIR%%/CMap/ETen-B5-V
%%GSRES_DIR%%/CMap/ETHK-B5-H
%%GSRES_DIR%%/CMap/ETHK-B5-V
%%GSRES_DIR%%/CMap/HKdla-B5-H
%%GSRES_DIR%%/CMap/HKdla-B5-V
%%GSRES_DIR%%/CMap/HKdlb-B5-H
%%GSRES_DIR%%/CMap/HKdlb-B5-V
%%GSRES_DIR%%/CMap/GB-H
%%GSRES_DIR%%/CMap/HKgccs-B5-H
%%GSRES_DIR%%/CMap/HKgccs-B5-V
%%GSRES_DIR%%/CMap/HKm314-B5-H
%%GSRES_DIR%%/CMap/HKm314-B5-V
%%GSRES_DIR%%/CMap/HKm471-B5-H
%%GSRES_DIR%%/CMap/HKm471-B5-V
%%GSRES_DIR%%/CMap/HKscs-B5-H
%%GSRES_DIR%%/CMap/HKscs-B5-V
%%GSRES_DIR%%/CMap/UniCNS-UCS2-H
%%GSRES_DIR%%/CMap/UniCNS-UCS2-V
%%GSRES_DIR%%/CMap/UniCNS-UTF16-H
%%GSRES_DIR%%/CMap/UniCNS-UTF16-V
%%GSRES_DIR%%/CMap/UniCNS-UTF32-H
%%GSRES_DIR%%/CMap/UniCNS-UTF32-V
%%GSRES_DIR%%/CMap/UniCNS-UTF8-H
%%GSRES_DIR%%/CMap/UniCNS-UTF8-V
%%GSRES_DIR%%/CMap/Adobe-GB1-0
%%GSRES_DIR%%/CMap/Adobe-GB1-1
%%GSRES_DIR%%/CMap/Adobe-GB1-2
%%GSRES_DIR%%/CMap/Adobe-GB1-3
%%GSRES_DIR%%/CMap/Adobe-GB1-4
%%GSRES_DIR%%/CMap/Adobe-GB1-5
%%GSRES_DIR%%/CMap/GB-EUC-H
%%GSRES_DIR%%/CMap/GB-EUC-V
%%GSRES_DIR%%/CMap/GB-V
%%GSRES_DIR%%/CMap/GBK-EUC-H
%%GSRES_DIR%%/CMap/GBK-EUC-V
%%GSRES_DIR%%/CMap/GBK2K-H
%%GSRES_DIR%%/CMap/GBK2K-V
%%GSRES_DIR%%/CMap/GBKp-EUC-H
%%GSRES_DIR%%/CMap/GBKp-EUC-V
%%GSRES_DIR%%/CMap/GBpc-EUC-H
%%GSRES_DIR%%/CMap/GBpc-EUC-V
%%GSRES_DIR%%/CMap/GBT-EUC-H
%%GSRES_DIR%%/CMap/GBT-EUC-V
%%GSRES_DIR%%/CMap/GBT-H
%%GSRES_DIR%%/CMap/GBT-V
%%GSRES_DIR%%/CMap/GBTpc-EUC-H
%%GSRES_DIR%%/CMap/GBTpc-EUC-V
%%GSRES_DIR%%/CMap/UniGB-UCS2-H
%%GSRES_DIR%%/CMap/UniGB-UCS2-V
%%GSRES_DIR%%/CMap/UniGB-UTF16-H
%%GSRES_DIR%%/CMap/UniGB-UTF16-V
%%GSRES_DIR%%/CMap/UniGB-UTF32-H
%%GSRES_DIR%%/CMap/UniGB-UTF32-V
%%GSRES_DIR%%/CMap/UniGB-UTF8-H
%%GSRES_DIR%%/CMap/UniGB-UTF8-V
%%GSRES_DIR%%/CMap/Identity-H
%%GSRES_DIR%%/CMap/78-H
%%GSRES_DIR%%/CMap/Identity-V
%%GSRES_DIR%%/CMap/78-EUC-H
%%GSRES_DIR%%/CMap/78-EUC-V
%%GSRES_DIR%%/CMap/78-RKSJ-H
%%GSRES_DIR%%/CMap/78-RKSJ-V
%%GSRES_DIR%%/CMap/78-V
%%GSRES_DIR%%/CMap/78ms-RKSJ-H
%%GSRES_DIR%%/CMap/78ms-RKSJ-V
%%GSRES_DIR%%/CMap/83pv-RKSJ-H
%%GSRES_DIR%%/CMap/90ms-RKSJ-H
%%GSRES_DIR%%/CMap/90ms-RKSJ-V
%%GSRES_DIR%%/CMap/90msp-RKSJ-H
%%GSRES_DIR%%/CMap/90msp-RKSJ-V
%%GSRES_DIR%%/CMap/90pv-RKSJ-H
%%GSRES_DIR%%/CMap/90pv-RKSJ-V
%%GSRES_DIR%%/CMap/Add-H
%%GSRES_DIR%%/CMap/Add-RKSJ-H
%%GSRES_DIR%%/CMap/Add-RKSJ-V
%%GSRES_DIR%%/CMap/Add-V
%%GSRES_DIR%%/CMap/Adobe-Japan1-0
%%GSRES_DIR%%/CMap/Adobe-Japan1-1
%%GSRES_DIR%%/CMap/Adobe-Japan1-2
%%GSRES_DIR%%/CMap/Adobe-Japan1-3
%%GSRES_DIR%%/CMap/EUC-H
%%GSRES_DIR%%/CMap/Adobe-Japan1-4
%%GSRES_DIR%%/CMap/Adobe-Japan1-5
%%GSRES_DIR%%/CMap/Adobe-Japan1-6
%%GSRES_DIR%%/CMap/EUC-V
%%GSRES_DIR%%/CMap/Ext-H
%%GSRES_DIR%%/CMap/Ext-RKSJ-H
%%GSRES_DIR%%/CMap/Ext-RKSJ-V
%%GSRES_DIR%%/CMap/Ext-V
%%GSRES_DIR%%/CMap/H
%%GSRES_DIR%%/CMap/Hankaku
%%GSRES_DIR%%/CMap/Hiragana
%%GSRES_DIR%%/CMap/Katakana
%%GSRES_DIR%%/CMap/NWP-H
%%GSRES_DIR%%/CMap/NWP-V
%%GSRES_DIR%%/CMap/RKSJ-H
%%GSRES_DIR%%/CMap/RKSJ-V
%%GSRES_DIR%%/CMap/Roman
%%GSRES_DIR%%/CMap/UniJIS-UCS2-H
%%GSRES_DIR%%/CMap/UniJIS-UCS2-HW-H
%%GSRES_DIR%%/CMap/UniJIS-UCS2-HW-V
%%GSRES_DIR%%/CMap/UniJIS-UCS2-V
%%GSRES_DIR%%/CMap/UniJIS-UTF16-H
%%GSRES_DIR%%/CMap/UniJIS-UTF16-V
%%GSRES_DIR%%/CMap/UniJIS-UTF32-H
%%GSRES_DIR%%/CMap/UniJIS-UTF32-V
%%GSRES_DIR%%/CMap/UniJIS-UTF8-H
%%GSRES_DIR%%/CMap/UniJIS-UTF8-V
%%GSRES_DIR%%/CMap/UniJISPro-UCS2-HW-V
%%GSRES_DIR%%/CMap/UniJISPro-UCS2-V
%%GSRES_DIR%%/CMap/UniJISPro-UTF8-V
%%GSRES_DIR%%/CMap/UniJISX0213-UTF32-H
%%GSRES_DIR%%/CMap/UniJISX0213-UTF32-V
%%GSRES_DIR%%/CMap/V
%%GSRES_DIR%%/CMap/WP-Symbol
%%GSRES_DIR%%/CMap/Adobe-Japan2-0
%%GSRES_DIR%%/CMap/Hojo-EUC-H
%%GSRES_DIR%%/CMap/Hojo-EUC-V
%%GSRES_DIR%%/CMap/Hojo-H
%%GSRES_DIR%%/CMap/Hojo-V
%%GSRES_DIR%%/CMap/UniHojo-UCS2-H
%%GSRES_DIR%%/CMap/UniHojo-UCS2-V
%%GSRES_DIR%%/CMap/UniHojo-UTF8-H
%%GSRES_DIR%%/CMap/UniHojo-UTF8-V
%%GSRES_DIR%%/CMap/UniHojo-UTF16-H
%%GSRES_DIR%%/CMap/UniHojo-UTF16-V
%%GSRES_DIR%%/CMap/UniHojo-UTF32-H
%%GSRES_DIR%%/CMap/UniHojo-UTF32-V
%%GSRES_DIR%%/CMap/Adobe-Korea1-0
%%GSRES_DIR%%/CMap/Adobe-Korea1-1
%%GSRES_DIR%%/CMap/Adobe-Korea1-2
%%GSRES_DIR%%/CMap/KSC-EUC-H
%%GSRES_DIR%%/CMap/KSC-EUC-V
%%GSRES_DIR%%/CMap/KSC-H
%%GSRES_DIR%%/CMap/KSC-Johab-H
%%GSRES_DIR%%/CMap/KSC-Johab-V
%%GSRES_DIR%%/CMap/KSC-V
%%GSRES_DIR%%/CMap/KSCms-UHC-H
%%GSRES_DIR%%/CMap/KSCms-UHC-HW-H
%%GSRES_DIR%%/CMap/KSCms-UHC-HW-V
%%GSRES_DIR%%/CMap/KSCms-UHC-V
%%GSRES_DIR%%/CMap/KSCpc-EUC-H
%%GSRES_DIR%%/CMap/KSCpc-EUC-V
%%GSRES_DIR%%/CMap/UniKS-UCS2-H
%%GSRES_DIR%%/CMap/UniKS-UCS2-V
%%GSRES_DIR%%/CMap/UniKS-UTF16-H
%%GSRES_DIR%%/CMap/UniKS-UTF16-V
%%GSRES_DIR%%/CMap/UniKS-UTF32-H
%%GSRES_DIR%%/CMap/UniKS-UTF32-V
%%GSRES_DIR%%/CMap/UniKS-UTF8-H
%%GSRES_DIR%%/CMap/UniKS-UTF8-V
%%GSRES_DIR%%/CMap/GB-RKSJ-H
%%GSRES_DIR%%/CMap/GBT-RKSJ-H
%%GSRES_DIR%%/CMap/Hojo-RKSJ-H
%%GSRES_DIR%%/CMap/KSC-RKSJ-H
%%GSRES_DIR%%/CMap/CNS01-RKSJ-H
%%GSRES_DIR%%/CMap/CNS02-RKSJ-H
%%GSRES_DIR%%/CMap/CNS03-RKSJ-H
%%GSRES_DIR%%/CMap/CNS04-RKSJ-H
%%GSRES_DIR%%/CMap/CNS05-RKSJ-H
%%GSRES_DIR%%/CMap/CNS06-RKSJ-H
%%GSRES_DIR%%/CMap/CNS07-RKSJ-H
%%GSRES_DIR%%/CMap/CNS15-RKSJ-H
%%GSRES_DIR%%/CMap/HK-RKSJ-H
%%GSRES_DIR%%/CMap/KSC2-RKSJ-H
%%GSRES_DIR%%/CMap/TCVN-RKSJ-H
%%GSRES_DIR%%/CMap/Adobe-CNS1-UCS2
%%GSRES_DIR%%/CMap/Adobe-GB1-UCS2
%%GSRES_DIR%%/CMap/Adobe-Japan1-UCS2
%%GSRES_DIR%%/CMap/Adobe-Korea1-UCS2
%%GSRES_DIR%%/CMap/90ms-RKSJ-UCS2
%%GSRES_DIR%%/CMap/90pv-RKSJ-UCS2
%%GSRES_DIR%%/CMap/90pv-RKSJ-UCS2C
%%GSRES_DIR%%/CMap/B5pc-UCS2
%%GSRES_DIR%%/CMap/B5pc-UCS2C
%%GSRES_DIR%%/CMap/ETen-B5-UCS2
%%GSRES_DIR%%/CMap/GBK-EUC-UCS2
%%GSRES_DIR%%/CMap/GBpc-EUC-UCS2
%%GSRES_DIR%%/CMap/GBpc-EUC-UCS2C
%%GSRES_DIR%%/CMap/KSCms-UHC-UCS2
%%GSRES_DIR%%/CMap/KSCpc-EUC-UCS2
%%GSRES_DIR%%/CMap/KSCpc-EUC-UCS2C
@dirrm %%GSRES_DIR%%/CMap
@dirrmtry %%GSRES_DIR%%
@exec /bin/mv %D/share/ghostscript/%%GS_VERSION%%/lib/gs_init.ps %D/share/ghostscript/%%GS_VERSION%%/lib/gs_init.ps.pre_sed
@exec /usr/bin/sed -e 's:^%.*(a4):(a4):g' %D/share/ghostscript/%%GS_VERSION%%/lib/gs_init.ps.pre_sed > %D/share/ghostscript/%%GS_VERSION%%/lib/gs_init.ps
@unexec /bin/rm %D/share/ghostscript/%%GS_VERSION%%/lib/gs_init.ps
@unexec /bin/mv %D/share/ghostscript/%%GS_VERSION%%/lib/gs_init.ps.pre_sed %D/share/ghostscript/%%GS_VERSION%%/lib/gs_init.ps

View File

@ -5,9 +5,40 @@
# $FreeBSD$
#
MASTERDIR= ${.CURDIR}
PORTREVISION= 3
PORTNAME= ghostscript-gnu-commfont
PORTVERSION= 7.07
PORTREVISION= 4
CATEGORIES= print
MASTER_SITES= # empty
DISTFILES= # empty
COMMFONT= yes
MAINTAINER= hrs@FreeBSD.org
COMMENT= Common files for GNU Ghostscript CJK font support
.include "${MASTERDIR}/Makefile.common"
RUN_DEPENDS= ${CMAPDIR}/ac15/cid2code.txt:${PORTSDIR}/print/adobe-cmaps
NO_WRKSUBDIR= yes
SUB_FILES= pkg-message \
Makefile template.cidfont template.ttcidfont template.font
SUB_LIST= PORTVERSION="${PORTVERSION}" GS_RESDIR="${GS_RESDIR}"
PLIST_SUB= GS_RESDIR="${GS_RESDIR}"
PKGMESSAGE= ${WRKDIR}/pkg-message
DEPENDS_ARGS+= -DA4
# set these forcibly
USE_GHOSTSCRIPT= yes
WITH_GHOSTSCRIPT_GNU= yes
CONFLICTS= ghostscript-afpl-[0-9]* \
ghostscript-afpl-nox11-[0-9]* \
ghostscript-gpl-[0-9]* \
ghostscript-gpl-nox11-[0-9]*
CMAPDIR?= ${LOCALBASE}/share/fonts/adobe-cmaps
GS_RESDIR?= share/ghostscript/Resource
post-extract: apply-slist
post-install:
@${CAT} ${PKGMESSAGE}
.include <bsd.port.mk>

View File

@ -1,81 +0,0 @@
# $FreeBSD$
PORTNAME= ghostscript
PORTVERSION= ${GS_VERSION}
CATEGORIES= print
MASTER_SITES= # nonexistent
PKGNAMESUFFIX= -gnu
DISTNAME= # nonexistent
DISTFILES= # empty
MAINTAINER?= ports@FreeBSD.org
COMMENT?= GNU ghostscript with CJK font support
RUN_DEPENDS= gs:${PORTSDIR}/print/ghostscript-gnu \
${CMAPDIR}/ac15/cid2code.txt:${PORTSDIR}/print/adobe-cmaps
NO_BUILD= yes
NO_WRKSUBDIR= yes
GSLIB_DIR= share/ghostscript/${PORTVERSION}/lib
GSRES_DIR= share/ghostscript/Resource
CMAPDIR= ${LOCALBASE}/share/fonts/adobe-cmaps
PLIST_SUB= GS_VERSION=${PORTVERSION} SHAREMODE=${SHAREMODE}
.if defined(COMMFONT)
PKGNAMESUFFIX:= ${PKGNAMESUFFIX}-commfont
PLIST= ${PKGDIR}/pkg-plist.common
PLIST_SUB+= GSRES_DIR=${GSRES_DIR}
.else
RUN_DEPENDS+= ${LOCALBASE}/share/ghostscript/${PORTVERSION}/lib/gs_init.ps.pre_sed:${PORTSDIR}/print/ghostscript-gnu-commfont
PLIST_SUB+= CIDFNMAP="${CIDFNMAP}"
.if defined(JPNFONT)
CATEGORIES:= japanese ${CATEGORIES}
COMMENT= GNU ghostscript with Japanese font support
PKGNAMEPREFIX= ja-
PKGNAMESUFFIX:= ${PKGNAMESUFFIX}-jpnfont
RUN_DEPENDS+= ${LOCALBASE}/share/fonts/TrueType/ipam.ttf:${PORTSDIR}/japanese/ipa-ttfonts
CIDFNMAP= CIDFnmap.jp
.elif defined(KORFONT)
CATEGORIES:= korean ${CATEGORIES}
COMMENT= GNU ghostscript with Korean font support
PKGNAMEPREFIX= ko-
PKGNAMESUFFIX:= ${PKGNAMESUFFIX}-korfont
RUN_DEPENDS+= ${LOCALBASE}/share/fonts/CIDFont/Munhwa-Bold:${PORTSDIR}/korean/munhwafonts-cid
CIDFNMAP= CIDFnmap.ko
.endif
.endif
.include <bsd.port.pre.mk>
.if !defined(COMMFONT)
SUB_FILES+= ${CIDFNMAP}
.endif
do-install:
.if defined(COMMFONT)
${MKDIR} -p ${PREFIX}/${GSRES_DIR}/CMap
cd ${PREFIX}/${GSRES_DIR}/CMap && \
${LN} -s -f `${FIND} ${CMAPDIR} -type f -a \! -name \*.txt` .
${MV} ${PREFIX}/${GSLIB_DIR}/gs_init.ps ${PREFIX}/${GSLIB_DIR}/gs_init.ps.pre_sed
${SED} -e "s:^%.*(a4):(a4):" ${PREFIX}/${GSLIB_DIR}/gs_init.ps.pre_sed > \
${PREFIX}/${GSLIB_DIR}/gs_init.ps
.else
${INSTALL_DATA} ${WRKSRC}/${CIDFNMAP} ${PREFIX}/${GSLIB_DIR}
${CP} ${PREFIX}/${GSLIB_DIR}/CIDFnmap ${PREFIX}/${GSLIB_DIR}/CIDFnmap.orig
( ${GREP} -v -e "${CIDFNMAP}" ${PREFIX}/${GSLIB_DIR}/CIDFnmap.orig;\
${ECHO_CMD} '(${CIDFNMAP}) .runlibfile'; \
) > ${PREFIX}/${GSLIB_DIR}/CIDFnmap
.endif
.if defined(KORFONT)
post-install:
${MKDIR} ${LOCALBASE}/share/ghostscript/Resource/CIDFont
.for i in Munhwa-Bold Munhwa-Regular MunhwaGothic-Bold MunhwaGothic-Regular
${LN} -sf ${LOCALBASE}/share/fonts/CIDFont/${i} \
${LOCALBASE}/share/ghostscript/Resource/CIDFont/${i}
${ECHO_CMD} "share/ghostscript/Resource/CIDFont/${i}" >> ${TMPPLIST}
${ECHO_CMD} "@unexec /bin/rmdir %D/share/ghostscript/Resource/CIDFont 2> /dev/null || true" >> ${TMPPLIST}
.endfor
.endif
.include "${PORTSDIR}/print/ghostscript-gnu/Makefile.inc"
.include <bsd.port.post.mk>

View File

@ -1,23 +0,0 @@
% $FreeBSD$
% Japanese Truetype Fonts
/Default-Mincho (%%LOCALBASE%%/share/fonts/TrueType/ipam.ttf) 1 ;
/Default-Gothic (%%LOCALBASE%%/share/fonts/TrueType/ipag.ttf) 1 ;
%
% Convenient aliases for PS files on Japanese PostScript printer
%
/Adobe-Japan1 /Default-Mincho ;
/Ryumin-Light /Default-Mincho ;
/Ryumin-Light-H /Default-Mincho ;
/Ryumin-Light-V /Default-Mincho ;
/GothicBBB-Medium /Default-Gothic ;
/GothicBBB-Medium-H /Default-Gothic ;
/GothicBBB-Medium-V /Default-Gothic ;
/HeiseiMin-W3H /Default-Mincho ;
/HeiseiKakuGo-W5H /Default-Gothic ;
/FutoMinA101-Bold /Default-Mincho ;
/FutoMinA101-Bold-H /Default-Mincho ;
/FutoMinA101-Bold-V /Default-Mincho ;
/FutoGoB101-Bold /Default-Gothic ;
/FutoGoB101-Bold-H /Default-Gothic ;
/FutoGoB101-Bold-V /Default-Gothic ;

View File

@ -1,9 +0,0 @@
% $FreeBSD$
/Adobe-Korea1 /Munhwa-Regular ;
%
% Convenient aliases for PS files on Korean PostScript printer
%
/HYGoThic-Medium /MunhwaGothic-Regular ;
/HYSMyeongJo-Medium /Munhwa-Regular ;
/HYRGoThic-Medium /MunhwaGothic-Bold ;

View File

@ -0,0 +1,140 @@
# $FreeBSD$
PREFIX?= /usr/local
LOCALBASE?= /usr/local
CMAPDIR?= ${LOCALBASE}/share/fonts/adobe-cmaps
CIDFONTDIR?= ${LOCALBASE}/share/fonts/CIDFont
GS_FONTDIR?= ${LOCALBASE}/share/ghostscript/fonts
GS_RESFONTDIR?= ${LOCALBASE}/share/ghostscript/Resource/Font
GS_RESCIDFONTDIR?= ${LOCALBASE}/share/ghostscript/Resource/CIDFont
GS_RESCMAPDIR?= ${LOCALBASE}/share/ghostscript/Resource/CMap
INSTALL_DATA?= install -m 444
MKDIR?= mkdir -p
LN?= ln
FIND?= find
AWK?= awk
R?= 
PROGRESS?= BEGIN { mark[0]=\"|\"; mark[1]=\"|\"; mark[2]=\"/\"; mark[3]=\"/\"; mark[4]=\"-\"; mark[5]=\"-\"; mark[6]=\"\\\\\"; mark[7]=\"\\\\\"; line = 0; } { line = (line + 1) % 8; printf(\"Generating virtual fonts...%s${R}\n\", mark[line]); }
TEMPLATES_TTF= cs.serif cs.sansserif \
ct.serif cs.sansserif \
ja.serif ja.sansserif
TEMPLATES_CID= ko.serif ko.sansserif
CS.CMAPS= ac15
CS.SERIF.GENERIC= STSong-Light
CS.SERIF.GENERIC_SUBST= STSong-Light.ttf
CS.SERIF= STSong-Light
CS.SANSSERIF.GENERIC= STHeiti-Regular
CS.SANSSERIF.GENERIC_SUBST= STHeiti-Regular.ttf
CS.SANSSERIF= STHeiti-Regular
CT.CMAPS= ag15
CT.SERIF.GENERIC= MSung-Light
CT.SERIF.GENERIC_SUBST= MSung-Light.ttf
CT.SERIF= MSung-Light
CT.SANSSERIF.GENERIC= MHei-Medium
CT.SANSSERIF.GENERIC_SUBST= MHei-Medium.ttf
CT.SANSSERIF= MHei-Medium
JA.CMAPS= aj16 aj20
JA.SERIF.GENERIC= Ryumin-Light
JA.SERIF.GENERIC_SUBST= Ryumin-Light.ttf
JA.SERIF= Ryumin-Light \
FutoMinA101-Bold \
HeiseiMin-W3
JA.SANSSERIF.GENERIC= GothicBBB-Medium
JA.SANSSERIF.GENERIC_SUBST= GothicBBB-Medium.ttf
JA.SANSSERIF= GothicBBB-Medium \
FutoGoB101-Bold \
HeiseiKakuGo-W5 \
HGSSoeiKakugothicUB \
HGPSoeiKakugothicUB
KO.CMAPS= ak12
KO.SERIF.GENERIC= HYSMyeongJo-Medium
KO.SERIF.GENERIC_SUBST= Munhwa-Regular
KO.SERIF= HYSMyeongJo-Medium
KO.SANSSERIF.GENERIC= HYGoThic-Medium
KO.SANSSERIF.GENERIC_SUBST= MunhwaGothic-Regular
KO.SANSSERIF= HYGoThic-Medium
all:
@${MKDIR} CIDFont Font
.for T in ${TEMPLATES_TTF}
@for F in ${${T:U}}; do \
echo "Generating CIDFont/$${F}"; \
sed -e "s,%%FONTNAME%%,$$F,g" \
-e "s,%%GS_FONTDIR%%,${GS_FONTDIR}," \
-e "s,%%GENERICFONTNAME%%,${${T:U}.GENERIC}," \
-e "s,%%GENERICFONTNAME_SUBST%%,${${T:U}.GENERIC_SUBST}," \
< template.ttcidfont > CIDFont/$${F}; \
for D in ${${T:U:C/\.[^.]*$//}.CMAPS}; do \
if [ -d ${CMAPDIR}/$${D}/CMap ]; then \
CMAPS=`cd ${CMAPDIR}/$${D}/CMap; echo *`; \
elif [ -r ${CMAPDIR}/$${D} ]; then \
CMAPS=`basename $${D}`; \
else \
echo "$${D}: not found"; exit 1; \
fi; \
for C in $${CMAPS}; do \
echo "Generating Font/$${F}-$${C}"; \
sed -e "s,%%FONTNAME%%,$$F,g" \
-e "s,%%GS_FONTDIR%%,${GS_FONTDIR}," \
-e "s,%%CMAPNAME%%,$${C}," \
-e "s,%%GENERICFONTNAME%%,${${T:U}.GENERIC}," \
-e "s,%%GENERICFONTNAME_SUBST%%,${${T:U}.GENERIC_SUBST}," \
< template.font > Font/$${F}-$${C}; \
done; \
done; \
done | awk "${PROGRESS}"
.endfor
.for T in ${TEMPLATES_CID}
@for F in ${${T:U}}; do \
echo "Generating CIDFont/$${F}"; \
sed -e "s,%%FONTNAME%%,$$F,g" \
-e "s,%%GS_FONTDIR%%,${GS_FONTDIR}," \
-e "s,%%GENERICFONTNAME%%,${${T:U}.GENERIC}," \
-e "s,%%GENERICFONTNAME_SUBST%%,${${T:U}.GENERIC_SUBST}," \
< template.cidfont > CIDFont/$${F}; \
for D in ${${T:U:C/\.[^.]*$//}.CMAPS}; do \
if [ -d ${CMAPDIR}/$${D}/CMap ]; then \
CMAPS=`cd ${CMAPDIR}/$${D}/CMap; echo *`; \
elif [ -r ${CMAPDIR}/$${D} ]; then \
CMAPS=`basename $${D}`; \
else \
echo "$${D}: not found"; exit 1; \
fi; \
for C in $${CMAPS}; do \
echo "Generating Font/$${F}-$${C}"; \
sed -e "s,%%FONTNAME%%,$$F,g" \
-e "s,%%GS_FONTDIR%%,${GS_FONTDIR}," \
-e "s,%%CMAPNAME%%,$${C}," \
-e "s,%%GENERICFONTNAME%%,${${T:U}.GENERIC}," \
-e "s,%%GENERICFONTNAME_SUBST%%,${${T:U}.GENERIC_SUBST}," \
< template.font > Font/$${F}-$${C}; \
done; \
done; \
done | awk "${PROGRESS}"
.endfor
@echo "Generating virtual fonts...done."
install:
${MKDIR} ${GS_RESCIDFONTDIR}
${INSTALL_DATA} CIDFont/* ${GS_RESCIDFONTDIR}
${MKDIR} ${GS_RESFONTDIR}
${INSTALL_DATA} Font/* ${GS_RESFONTDIR}
${MKDIR} ${GS_RESCMAPDIR}
cd ${GS_RESCMAPDIR} && ${LN} -s -f `${FIND} ${CMAPDIR} -type f` .
.for T in ${TEMPLATES_CID}
cd ${GS_RESCIDFONTDIR} && ${LN} -s -f ${CIDFONTDIR}/${${T:U}.GENERIC_SUBST} ${${T:U}.GENERIC_SUBST}
.endfor

View File

@ -0,0 +1,14 @@
=== NOTE ===
The CJK font selection will be performed in the following order:
1. %%PREFIX%%/%%GS_RESDIR%%/Font/<fontname>
2. %%PREFIX%%/%%GS_RESDIR%%/CIDFont/<fontname>
3. %%PREFIX%%/share/ghostscript/%%PORTVERSION%%/lib/CIDFnmap
So, to use CIDFnmap you have to make sure that there is no font file that
has the same name as you want to customize in Resource/Font and
Resource/CIDFont.

View File

@ -0,0 +1,10 @@
%!PS-Adobe-3.0 Resource-CIDFont
%%Creator: $FreeBSD$
%%BeginResource: CIDFont (%%FONTNAME%%)
(%%FONTNAME%%)
(%%GENERICFONTNAME_SUBST%%) /CIDFont findresource
/CIDFont defineresource pop
%%EndResource
%%EOF

View File

@ -0,0 +1,12 @@
%!PS-Adobe-3.0 Resource-Font
%%Creator: $FreeBSD$
%%DocumentNeededResources: %%CMAPNAME%% (CMap)
%%IncludeResource: %%CMAPNAME%% (CMap)
%%BeginResource: Font (%%FONTNAME%%-%%CMAPNAME%%)
(%%FONTNAME%%-%%CMAPNAME%%)
(%%CMAPNAME%%) /CMap findresource
[(%%GENERICFONTNAME%%) /CIDFont findresource]
composefont
pop
%%EndResource
%%EOF

View File

@ -0,0 +1,10 @@
%!PS-Adobe-3.0 Resource-CIDFont
%%Creator: $FreeBSD$
%%BeginResource: CIDFont (%%FONTNAME%%)
(%%FONTNAME%%)
(%%GENERICFONTNAME_SUBST%%) findlibfile pop pop .openttcidfont
/CIDFont defineresource pop
%%EndResource
%%EOF

View File

@ -1 +1,2 @@
Ghostscript CJK font resources
This is a virtual CJK font set for GNU Ghostscript. These virtual fonts
call several TrueType Japanese/Korean/Chinese fonts as the real instances.

File diff suppressed because it is too large Load Diff

View File

@ -1,206 +0,0 @@
@comment $FreeBSD$
%%GSRES_DIR%%/CMap/Adobe-CNS1-0
%%GSRES_DIR%%/CMap/Adobe-CNS1-1
%%GSRES_DIR%%/CMap/Adobe-CNS1-2
%%GSRES_DIR%%/CMap/Adobe-CNS1-3
%%GSRES_DIR%%/CMap/Adobe-CNS1-4
%%GSRES_DIR%%/CMap/Adobe-CNS1-5
%%GSRES_DIR%%/CMap/B5-H
%%GSRES_DIR%%/CMap/B5-V
%%GSRES_DIR%%/CMap/B5pc-H
%%GSRES_DIR%%/CMap/B5pc-V
%%GSRES_DIR%%/CMap/CNS-EUC-H
%%GSRES_DIR%%/CMap/CNS-EUC-V
%%GSRES_DIR%%/CMap/CNS1-H
%%GSRES_DIR%%/CMap/CNS1-V
%%GSRES_DIR%%/CMap/CNS2-H
%%GSRES_DIR%%/CMap/CNS2-V
%%GSRES_DIR%%/CMap/ETen-B5-H
%%GSRES_DIR%%/CMap/ETen-B5-V
%%GSRES_DIR%%/CMap/ETHK-B5-H
%%GSRES_DIR%%/CMap/ETHK-B5-V
%%GSRES_DIR%%/CMap/HKdla-B5-H
%%GSRES_DIR%%/CMap/HKdla-B5-V
%%GSRES_DIR%%/CMap/HKdlb-B5-H
%%GSRES_DIR%%/CMap/HKdlb-B5-V
%%GSRES_DIR%%/CMap/GB-H
%%GSRES_DIR%%/CMap/HKgccs-B5-H
%%GSRES_DIR%%/CMap/HKgccs-B5-V
%%GSRES_DIR%%/CMap/HKm314-B5-H
%%GSRES_DIR%%/CMap/HKm314-B5-V
%%GSRES_DIR%%/CMap/HKm471-B5-H
%%GSRES_DIR%%/CMap/HKm471-B5-V
%%GSRES_DIR%%/CMap/HKscs-B5-H
%%GSRES_DIR%%/CMap/HKscs-B5-V
%%GSRES_DIR%%/CMap/UniCNS-UCS2-H
%%GSRES_DIR%%/CMap/UniCNS-UCS2-V
%%GSRES_DIR%%/CMap/UniCNS-UTF16-H
%%GSRES_DIR%%/CMap/UniCNS-UTF16-V
%%GSRES_DIR%%/CMap/UniCNS-UTF32-H
%%GSRES_DIR%%/CMap/UniCNS-UTF32-V
%%GSRES_DIR%%/CMap/UniCNS-UTF8-H
%%GSRES_DIR%%/CMap/UniCNS-UTF8-V
%%GSRES_DIR%%/CMap/Adobe-GB1-0
%%GSRES_DIR%%/CMap/Adobe-GB1-1
%%GSRES_DIR%%/CMap/Adobe-GB1-2
%%GSRES_DIR%%/CMap/Adobe-GB1-3
%%GSRES_DIR%%/CMap/Adobe-GB1-4
%%GSRES_DIR%%/CMap/Adobe-GB1-5
%%GSRES_DIR%%/CMap/GB-EUC-H
%%GSRES_DIR%%/CMap/GB-EUC-V
%%GSRES_DIR%%/CMap/GB-V
%%GSRES_DIR%%/CMap/GBK-EUC-H
%%GSRES_DIR%%/CMap/GBK-EUC-V
%%GSRES_DIR%%/CMap/GBK2K-H
%%GSRES_DIR%%/CMap/GBK2K-V
%%GSRES_DIR%%/CMap/GBKp-EUC-H
%%GSRES_DIR%%/CMap/GBKp-EUC-V
%%GSRES_DIR%%/CMap/GBpc-EUC-H
%%GSRES_DIR%%/CMap/GBpc-EUC-V
%%GSRES_DIR%%/CMap/GBT-EUC-H
%%GSRES_DIR%%/CMap/GBT-EUC-V
%%GSRES_DIR%%/CMap/GBT-H
%%GSRES_DIR%%/CMap/GBT-V
%%GSRES_DIR%%/CMap/GBTpc-EUC-H
%%GSRES_DIR%%/CMap/GBTpc-EUC-V
%%GSRES_DIR%%/CMap/UniGB-UCS2-H
%%GSRES_DIR%%/CMap/UniGB-UCS2-V
%%GSRES_DIR%%/CMap/UniGB-UTF16-H
%%GSRES_DIR%%/CMap/UniGB-UTF16-V
%%GSRES_DIR%%/CMap/UniGB-UTF32-H
%%GSRES_DIR%%/CMap/UniGB-UTF32-V
%%GSRES_DIR%%/CMap/UniGB-UTF8-H
%%GSRES_DIR%%/CMap/UniGB-UTF8-V
%%GSRES_DIR%%/CMap/Identity-H
%%GSRES_DIR%%/CMap/78-H
%%GSRES_DIR%%/CMap/Identity-V
%%GSRES_DIR%%/CMap/78-EUC-H
%%GSRES_DIR%%/CMap/78-EUC-V
%%GSRES_DIR%%/CMap/78-RKSJ-H
%%GSRES_DIR%%/CMap/78-RKSJ-V
%%GSRES_DIR%%/CMap/78-V
%%GSRES_DIR%%/CMap/78ms-RKSJ-H
%%GSRES_DIR%%/CMap/78ms-RKSJ-V
%%GSRES_DIR%%/CMap/83pv-RKSJ-H
%%GSRES_DIR%%/CMap/90ms-RKSJ-H
%%GSRES_DIR%%/CMap/90ms-RKSJ-V
%%GSRES_DIR%%/CMap/90msp-RKSJ-H
%%GSRES_DIR%%/CMap/90msp-RKSJ-V
%%GSRES_DIR%%/CMap/90pv-RKSJ-H
%%GSRES_DIR%%/CMap/90pv-RKSJ-V
%%GSRES_DIR%%/CMap/Add-H
%%GSRES_DIR%%/CMap/Add-RKSJ-H
%%GSRES_DIR%%/CMap/Add-RKSJ-V
%%GSRES_DIR%%/CMap/Add-V
%%GSRES_DIR%%/CMap/Adobe-Japan1-0
%%GSRES_DIR%%/CMap/Adobe-Japan1-1
%%GSRES_DIR%%/CMap/Adobe-Japan1-2
%%GSRES_DIR%%/CMap/Adobe-Japan1-3
%%GSRES_DIR%%/CMap/EUC-H
%%GSRES_DIR%%/CMap/Adobe-Japan1-4
%%GSRES_DIR%%/CMap/Adobe-Japan1-5
%%GSRES_DIR%%/CMap/Adobe-Japan1-6
%%GSRES_DIR%%/CMap/EUC-V
%%GSRES_DIR%%/CMap/Ext-H
%%GSRES_DIR%%/CMap/Ext-RKSJ-H
%%GSRES_DIR%%/CMap/Ext-RKSJ-V
%%GSRES_DIR%%/CMap/Ext-V
%%GSRES_DIR%%/CMap/H
%%GSRES_DIR%%/CMap/Hankaku
%%GSRES_DIR%%/CMap/Hiragana
%%GSRES_DIR%%/CMap/Katakana
%%GSRES_DIR%%/CMap/NWP-H
%%GSRES_DIR%%/CMap/NWP-V
%%GSRES_DIR%%/CMap/RKSJ-H
%%GSRES_DIR%%/CMap/RKSJ-V
%%GSRES_DIR%%/CMap/Roman
%%GSRES_DIR%%/CMap/UniJIS-UCS2-H
%%GSRES_DIR%%/CMap/UniJIS-UCS2-HW-H
%%GSRES_DIR%%/CMap/UniJIS-UCS2-HW-V
%%GSRES_DIR%%/CMap/UniJIS-UCS2-V
%%GSRES_DIR%%/CMap/UniJIS-UTF16-H
%%GSRES_DIR%%/CMap/UniJIS-UTF16-V
%%GSRES_DIR%%/CMap/UniJIS-UTF32-H
%%GSRES_DIR%%/CMap/UniJIS-UTF32-V
%%GSRES_DIR%%/CMap/UniJIS-UTF8-H
%%GSRES_DIR%%/CMap/UniJIS-UTF8-V
%%GSRES_DIR%%/CMap/UniJISPro-UCS2-HW-V
%%GSRES_DIR%%/CMap/UniJISPro-UCS2-V
%%GSRES_DIR%%/CMap/UniJISPro-UTF8-V
%%GSRES_DIR%%/CMap/UniJISX0213-UTF32-H
%%GSRES_DIR%%/CMap/UniJISX0213-UTF32-V
%%GSRES_DIR%%/CMap/V
%%GSRES_DIR%%/CMap/WP-Symbol
%%GSRES_DIR%%/CMap/Adobe-Japan2-0
%%GSRES_DIR%%/CMap/Hojo-EUC-H
%%GSRES_DIR%%/CMap/Hojo-EUC-V
%%GSRES_DIR%%/CMap/Hojo-H
%%GSRES_DIR%%/CMap/Hojo-V
%%GSRES_DIR%%/CMap/UniHojo-UCS2-H
%%GSRES_DIR%%/CMap/UniHojo-UCS2-V
%%GSRES_DIR%%/CMap/UniHojo-UTF8-H
%%GSRES_DIR%%/CMap/UniHojo-UTF8-V
%%GSRES_DIR%%/CMap/UniHojo-UTF16-H
%%GSRES_DIR%%/CMap/UniHojo-UTF16-V
%%GSRES_DIR%%/CMap/UniHojo-UTF32-H
%%GSRES_DIR%%/CMap/UniHojo-UTF32-V
%%GSRES_DIR%%/CMap/Adobe-Korea1-0
%%GSRES_DIR%%/CMap/Adobe-Korea1-1
%%GSRES_DIR%%/CMap/Adobe-Korea1-2
%%GSRES_DIR%%/CMap/KSC-EUC-H
%%GSRES_DIR%%/CMap/KSC-EUC-V
%%GSRES_DIR%%/CMap/KSC-H
%%GSRES_DIR%%/CMap/KSC-Johab-H
%%GSRES_DIR%%/CMap/KSC-Johab-V
%%GSRES_DIR%%/CMap/KSC-V
%%GSRES_DIR%%/CMap/KSCms-UHC-H
%%GSRES_DIR%%/CMap/KSCms-UHC-HW-H
%%GSRES_DIR%%/CMap/KSCms-UHC-HW-V
%%GSRES_DIR%%/CMap/KSCms-UHC-V
%%GSRES_DIR%%/CMap/KSCpc-EUC-H
%%GSRES_DIR%%/CMap/KSCpc-EUC-V
%%GSRES_DIR%%/CMap/UniKS-UCS2-H
%%GSRES_DIR%%/CMap/UniKS-UCS2-V
%%GSRES_DIR%%/CMap/UniKS-UTF16-H
%%GSRES_DIR%%/CMap/UniKS-UTF16-V
%%GSRES_DIR%%/CMap/UniKS-UTF32-H
%%GSRES_DIR%%/CMap/UniKS-UTF32-V
%%GSRES_DIR%%/CMap/UniKS-UTF8-H
%%GSRES_DIR%%/CMap/UniKS-UTF8-V
%%GSRES_DIR%%/CMap/GB-RKSJ-H
%%GSRES_DIR%%/CMap/GBT-RKSJ-H
%%GSRES_DIR%%/CMap/Hojo-RKSJ-H
%%GSRES_DIR%%/CMap/KSC-RKSJ-H
%%GSRES_DIR%%/CMap/CNS01-RKSJ-H
%%GSRES_DIR%%/CMap/CNS02-RKSJ-H
%%GSRES_DIR%%/CMap/CNS03-RKSJ-H
%%GSRES_DIR%%/CMap/CNS04-RKSJ-H
%%GSRES_DIR%%/CMap/CNS05-RKSJ-H
%%GSRES_DIR%%/CMap/CNS06-RKSJ-H
%%GSRES_DIR%%/CMap/CNS07-RKSJ-H
%%GSRES_DIR%%/CMap/CNS15-RKSJ-H
%%GSRES_DIR%%/CMap/HK-RKSJ-H
%%GSRES_DIR%%/CMap/KSC2-RKSJ-H
%%GSRES_DIR%%/CMap/TCVN-RKSJ-H
%%GSRES_DIR%%/CMap/Adobe-CNS1-UCS2
%%GSRES_DIR%%/CMap/Adobe-GB1-UCS2
%%GSRES_DIR%%/CMap/Adobe-Japan1-UCS2
%%GSRES_DIR%%/CMap/Adobe-Korea1-UCS2
%%GSRES_DIR%%/CMap/90ms-RKSJ-UCS2
%%GSRES_DIR%%/CMap/90pv-RKSJ-UCS2
%%GSRES_DIR%%/CMap/90pv-RKSJ-UCS2C
%%GSRES_DIR%%/CMap/B5pc-UCS2
%%GSRES_DIR%%/CMap/B5pc-UCS2C
%%GSRES_DIR%%/CMap/ETen-B5-UCS2
%%GSRES_DIR%%/CMap/GBK-EUC-UCS2
%%GSRES_DIR%%/CMap/GBpc-EUC-UCS2
%%GSRES_DIR%%/CMap/GBpc-EUC-UCS2C
%%GSRES_DIR%%/CMap/KSCms-UHC-UCS2
%%GSRES_DIR%%/CMap/KSCpc-EUC-UCS2
%%GSRES_DIR%%/CMap/KSCpc-EUC-UCS2C
@dirrm %%GSRES_DIR%%/CMap
@dirrmtry %%GSRES_DIR%%
@exec /bin/mv %D/share/ghostscript/%%GS_VERSION%%/lib/gs_init.ps %D/share/ghostscript/%%GS_VERSION%%/lib/gs_init.ps.pre_sed
@exec /usr/bin/sed -e 's:^%.*(a4):(a4):g' %D/share/ghostscript/%%GS_VERSION%%/lib/gs_init.ps.pre_sed > %D/share/ghostscript/%%GS_VERSION%%/lib/gs_init.ps
@unexec /bin/rm %D/share/ghostscript/%%GS_VERSION%%/lib/gs_init.ps
@unexec /bin/mv %D/share/ghostscript/%%GS_VERSION%%/lib/gs_init.ps.pre_sed %D/share/ghostscript/%%GS_VERSION%%/lib/gs_init.ps

View File

@ -5,11 +5,26 @@
# $FreeBSD$
#
MASTERDIR= ${.CURDIR}/../../print/ghostscript-gnu-commfont
PORTREVISION= 3
PORTNAME= ghostscript-gnu-jpnfont
PORTVERSION= 7.07
PORTREVISION= 4
CATEGORIES= japanese print
MASTER_SITES= # empty
DISTFILES= # empty
.undef COMMFONT
MAINTAINER= hrs@FreeBSD.org
COMMENT= Japanese font support for GNU Ghostscript
JPNFONT= yes
RUN_DEPENDS= ${LOCALBASE}/share/fonts/TrueType/ipam.ttf:${PORTSDIR}/japanese/ipa-ttfonts \
${LOCALBASE}/share/ghostscript/Resource/CIDFont/Ryumin-Light:${PORTSDIR}/print/ghostscript-gnu-commfont
.include "${MASTERDIR}/Makefile.common"
# set these forcibly
WITH_GHOSTSCRIPT_GNU= yes
USE_GHOSTSCRIPT_RUN= yes
NO_BUILD= yes
DEPENDS_ARGS+= -DA4
do-install:
@${DO_NADA}
.include <bsd.port.mk>

View File

@ -0,0 +1 @@
This is a meta package to add Japanese font support to GNU Ghostscript.

View File

@ -5,12 +5,26 @@
# $FreeBSD$
#
MASTERDIR= ${.CURDIR}/../../print/ghostscript-gnu-commfont
PORTREVISION= 1
PORTNAME= ghostscript-gnu-korfont
PORTVERSION= 7.07
PORTREVISION= 2
CATEGORIES= korean print
MASTER_SITES= # empty
DISTFILES= # empty
.undef COMMFONT
MAINTAINER= hrs@FreeBSD.org
COMMENT= Korean font support for GNU Ghostscript
KORFONT= yes
RUN_DEPENDS= ${LOCALBASE}/share/fonts/CIDFont/Munhwa-Regular:${PORTSDIR}/korean/munhwafonts-cid \
${LOCALBASE}/share/ghostscript/Resource/CIDFont/HYSMyeongJo-Medium:${PORTSDIR}/print/ghostscript-gnu-commfont
.include "${MASTERDIR}/Makefile.common"
# set these forcibly
WITH_GHOSTSCRIPT_GNU= yes
USE_GHOSTSCRIPT_RUN= yes
NO_BUILD= yes
DEPENDS_ARGS+= -DA4
do-install:
@${DO_NADA}
.include <bsd.port.mk>

View File

@ -0,0 +1 @@
This is a meta package to add Korean font support to GNU Ghostscript.

View File

@ -7,7 +7,7 @@
PORTNAME= gsfonts
PORTVERSION= 8.11
PORTREVISION= 3
PORTREVISION= 4
CATEGORIES= print x11-fonts
MASTER_SITES= ftp://mirror.cs.wisc.edu/pub/mirrors/ghost/fonts/ \
${MASTER_SITE_TEX_CTAN:S/$/:CTAN/}
@ -33,7 +33,11 @@ SUB_LIST= FONTSDIR="${FONTSDIR}"
FONTSDIR?= ${PREFIX}/share/ghostscript/fonts
GS_FONTS_STD= ghostscript-fonts-std-8.11.tar.gz
GS_FONTS_OTHER= ghostscript-fonts-other-6.0.tar.gz
CJKFONTS?= TrueType/ipam.ttf Ryumin-Light.ttf \
TrueType/ipag.ttf GothicBBB-Medium.ttf \
TrueType/bkai00mp.ttf STHeiti-Regular.ttf \
TrueType/gbsn00lp.ttf STSong-Light.ttf \
TrueType/bsmi00lp.ttf MSung-Light.ttf
.SILENT:
post-patch:
@ -60,9 +64,14 @@ install-fonts:
${INSTALL_DATA} ${WRKSRC}/fonts/fonts.scale ${FONTSDIR}
${INSTALL_DATA} ${WRKSRC}/fonts/fonts.scale.urw ${FONTSDIR}
${INSTALL_DATA} ${WRKSRC}/fonts/Fontmap ${FONTSDIR}
cd ${FONTSDIR} && \
${LN} -s -f ${LOCALBASE}/share/fonts/TrueType/ipam.ttf Ryumin-Light.ttf; \
${LN} -s -f ${LOCALBASE}/share/fonts/TrueType/ipag.ttf GothicBBB-Medium.ttf
set -- ${CJKFONTS}; while :; do \
case $$# in \
0) break ;; \
*) LHS=$$1; shift; RHS=$$1; shift; \
cd ${FONTSDIR} \
&& ${LN} -s -f ${PREFIX}/share/fonts/$${LHS} $${RHS}; \
esac; \
done
install-docs:
.if !defined(NOPORTDOCS)

View File

@ -154,6 +154,9 @@
%%FONTSDIR%%/z003034l.pfm
%%FONTSDIR%%/Ryumin-Light.ttf
%%FONTSDIR%%/GothicBBB-Medium.ttf
%%FONTSDIR%%/STHeiti-Regular.ttf
%%FONTSDIR%%/STSong-Light.ttf
%%FONTSDIR%%/MSung-Light.ttf
%%PORTDOCS%%%%DOCSDIR%%/ChangeLog
%%PORTDOCS%%%%DOCSDIR%%/README
%%PORTDOCS%%%%DOCSDIR%%/README.tweaks