+ $char=pack('U',$char_id);
+
+ if($out_cs eq 'UniJIS'
+ and &get_char_attribute($char,"vnd-adobe-cid-unijis-utf16-h")){
+ if($out_char_id=&get_char_attribute($char,'=ucs@jis')
+ or $out_char_id=&get_char_attribute($char,'=ucs')
+ or $out_char_id=&get_char_attribute($char,'=>ucs@jis')
+ or $out_char_id=&get_char_attribute($char,'=>ucs')
+ ){
+ return pack("U",$out_char_id);
+ }
+ }elsif($out_cs eq 'UniGB'
+ and &get_char_attribute($char,"vnd-adobe-cid-unigb-ucs2-h")){
+ if($out_char_id=&get_char_attribute($char,'=ucs@gb')
+ or $out_char_id=&get_char_attribute($char,'=ucs')
+ or $out_char_id=&get_char_attribute($char,'=>ucs@gb')
+ or $out_char_id=&get_char_attribute($char,'=>ucs')
+ ){
+ return pack("U",$out_char_id);
+ }
+ }elsif($out_cs eq 'UniCNS'
+ and &get_char_attribute($char,"vnd-adobe-cid-unicns-ucs2-h")){
+ if($out_char_id=&get_char_attribute($char,'=ucs@cns')
+ or $out_char_id=&get_char_attribute($char,'=ucs')
+ or $out_char_id=&get_char_attribute($char,'=>ucs@cns')
+ or $out_char_id=&get_char_attribute($char,'=>ucs')
+ ){
+ return pack("U",$out_char_id);
+ }
+ }elsif($out_cs eq 'UniKS'
+ and &get_char_attribute($char,"vnd-adobe-cid-uniks-ucs2-h")){
+ if($out_char_id=&get_char_attribute($char,'=ucs@ks')
+ or $out_char_id=&get_char_attribute($char,'=ucs')
+ or $out_char_id=&get_char_attribute($char,'=>ucs@ks')
+ or $out_char_id=&get_char_attribute($char,'=>ucs')
+ ){
+ return pack("U",$out_char_id);
+ }
+ }elsif($out_cs eq 'UniMulti'){
+ foreach $out_cs (@order){
+
+ if($out_cs eq 'UniJIS'
+ and &get_char_attribute($char,"vnd-adobe-cid-unijis-utf16-h")){
+ if($out_char_id=&get_char_attribute($char,'=ucs@jis')
+ or $out_char_id=&get_char_attribute($char,'=ucs')
+ or $out_char_id=&get_char_attribute($char,'=>ucs@jis')
+ or $out_char_id=&get_char_attribute($char,'=>ucs')
+ ){
+ return '{\selectjisfont\char'.$out_char_id.'}';
+ }
+ }elsif($out_cs eq 'UniGB'
+ and &get_char_attribute($char,"vnd-adobe-cid-unigb-ucs2-h")){
+ if($out_char_id=&get_char_attribute($char,'=ucs@gb')
+ or $out_char_id=&get_char_attribute($char,'=ucs')
+ or $out_char_id=&get_char_attribute($char,'=>ucs@gb')
+ or $out_char_id=&get_char_attribute($char,'=>ucs')
+ ){
+ return '{\selectgbsfont\char'.$out_char_id.'}';
+ }
+ }elsif($out_cs eq 'UniCNS'
+ and &get_char_attribute($char,"vnd-adobe-cid-unicns-ucs2-h")){
+ if($out_char_id=&get_char_attribute($char,'=ucs@cns')
+ or $out_char_id=&get_char_attribute($char,'=ucs')
+ or $out_char_id=&get_char_attribute($char,'=>ucs@cns')
+ or $out_char_id=&get_char_attribute($char,'=>ucs')
+ ){
+ return '{\selectcnsfont\char'.$out_char_id.'}';
+ }
+ }elsif($out_cs eq 'UniKS'
+ and &get_char_attribute($char,"vnd-adobe-cid-uniks-ucs2-h")){
+ if($out_char_id=&get_char_attribute($char,'=ucs@ks')
+ or $out_char_id=&get_char_attribute($char,'=ucs')
+ or $out_char_id=&get_char_attribute($char,'=>ucs@ks')
+ or $out_char_id=&get_char_attribute($char,'=>ucs')
+ ){
+ return '{\selectksxfont\char'.$out_char_id.'}';
+ }
+ }elsif($out_cs eq 'GT'){
+ return $gt if($gt=&get_macro_for_GT($char_id));
+ }elsif($out_cs eq 'HZK'){
+ return $hzk if($hzk=&get_macro_for_HZK($char_id));
+ }elsif($out_cs eq 'CDP'){
+ return $cdp if($cdp=&get_macro_for_CDP($char_id));
+ }
+ }
+ }
+ return undef;