# Chinese translations for R package
# Copyright (C) 2006 The R Foundation
# This file is distributed under the same license as the PACKAGE package.
# 陈斐 <feic@normipaiva.com>, 2006.
#
msgid ""
msgstr ""
"Project-Id-Version: R 2.4.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-03-24 10:53-0700\n"
"PO-Revision-Date: 2005-02-04 08:37+0000\n"
"Last-Translator: 陈斐 <feic@normipaiva.com>\n"
"Language-Team: Chinese\n"
"Language: zh_CN\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"

#: axis_scales.c:37 axis_scales.c:38 axis_scales.c:56
#, c-format
msgid "'%s' must be numeric of length %d"
msgstr "'%s'必需是长度为%d的数值"

#: colors.c:69
#, fuzzy, c-format
msgid "color intensity %s, not in [0,1]"
msgstr "颜色强度%g，不在[0,1]"

#: colors.c:71
#, c-format
msgid "color intensity %g, not in [0,1]"
msgstr "颜色强度%g，不在[0,1]"

#: colors.c:78
#, fuzzy, c-format
msgid "color intensity %s, not in 0:255"
msgstr "颜色强度%d，不在0:255"

#: colors.c:80
#, c-format
msgid "color intensity %d, not in 0:255"
msgstr "颜色强度%d，不在0:255"

#: colors.c:87
#, fuzzy, c-format
msgid "alpha level %s, not in [0,1]"
msgstr "α水平%g，不在[0,1]"

#: colors.c:89
#, c-format
msgid "alpha level %g, not in [0,1]"
msgstr "α水平%g，不在[0,1]"

#: colors.c:96
#, fuzzy, c-format
msgid "alpha level %s, not in 0:255"
msgstr "α水平%d，不在0:255"

#: colors.c:98
#, c-format
msgid "alpha level %d, not in 0:255"
msgstr "α水平%d，不在0:255"

#: colors.c:113
msgid "inputs must be finite"
msgstr ""

#: colors.c:128
msgid "bad hsv to rgb color conversion"
msgstr "hsv到rgb颜色转换出错"

#: colors.c:220 colors.c:234
msgid "invalid hsv color"
msgstr "hsv颜色不对"

#: colors.c:346 colors.c:366
msgid "invalid hcl color"
msgstr "hcl颜色不对"

#: colors.c:398
#, fuzzy
msgid "invalid value of 'maxColorValue'"
msgstr "'%s'的值不对"

#: colors.c:426
msgid "invalid 'names' vector"
msgstr "'names'向量不对"

#: colors.c:485 colors.c:494
msgid "invalid gray level, must be in [0,1]."
msgstr "灰色水平不对，必需在[0,1]。"

#: colors.c:550
#, c-format
msgid "invalid '%s' value"
msgstr "'%s'值 不对"

#: colors.c:1337
msgid "invalid hex digit in 'color' or 'lty'"
msgstr "'color'或'lty'里的十六进制数字不对"

#: colors.c:1347 colors.c:1357
msgid "invalid RGB specification"
msgstr "RGB设置出错"

#: colors.c:1390
#, c-format
msgid "invalid color name '%s'"
msgstr "'%s'颜色名字不对"

#: colors.c:1440 colors.c:1449
#, c-format
msgid "invalid color specification \"%s\""
msgstr "颜色设置出错\"%s\""

#: colors.c:1477
msgid "supplied color is neither numeric nor character"
msgstr "所提供的颜色值既不是数字也不是字符"

#: colors.c:1481
#, c-format
msgid "numerical color values must be >= 0, found %d"
msgstr "颜色数值必需大于等于零，现在得到的是%d"

#: colors.c:1492
msgid "invalid argument type"
msgstr "参数种类不对"

#: colors.c:1503
msgid "unknown palette (need >= 2 colors)"
msgstr "没有这样的调色板（至少需要两种颜色"

#: colors.c:1507 colors.c:1529
#, c-format
msgid "maximum number of colors is %d"
msgstr "最大颜色数是%d"

#: devPS.c:562
#, c-format
msgid "afm file '%s' could not be opened"
msgstr "无法打开afm文本'%s'"

#: devPS.c:630
msgid "unknown AFM entity encountered"
msgstr "遇到未知AFM值这个错误"

#: devPS.c:742 devPS.c:745 devPS.c:4452 devPS.c:7965 devPicTeX.c:465
#: devPicTeX.c:467
#, c-format
msgid "invalid string in '%s'"
msgstr "'%s'里的字符串不对"

#: devPS.c:776
#, c-format
msgid "font width unknown for character 0x%x"
msgstr "字符0x%x不带字体宽度这样的设置"

#: devPS.c:834
#, c-format
msgid "unknown encoding '%s' in 'PostScriptMetricInfo'"
msgstr "'PostScriptMetricInfo'里没有'%s'编码"

#: devPS.c:850 devPS.c:861
#, c-format
msgid "font metrics unknown for Unicode character U+%04x"
msgstr "Unicode字符U+%04x不带字体度量"

#: devPS.c:869
#, c-format
msgid "font metrics unknown for character 0x%x"
msgstr "字符0x%x不带字体度量"

#: devPS.c:883
#, c-format
msgid ""
"invalid character (%04x) sent to 'PostScriptCIDMetricInfo' in a single-byte "
"locale"
msgstr "传给'PostScriptCIDMetricInfo'的字符(%04x)在单字节場所里, 因此不对"

#: devPS.c:891
msgid ""
"invalid character sent to 'PostScriptCIDMetricInfo' in a single-byte locale"
msgstr "传给'PostScriptCIDMetricInfo'的字符是单字节場所, 因此不对"

#: devPS.c:996
msgid "failed to allocate CID font info"
msgstr "无法分配CID字体信息"

#: devPS.c:1012
msgid "failed to allocate Type 1 font info"
msgstr "无法分配一类别字体信息"

#: devPS.c:1032
msgid "failed to allocate encoding info"
msgstr "无法分配编码信息"

#: devPS.c:1050
msgid "failed to allocate CID font family"
msgstr "无法分配CID字体系列"

#: devPS.c:1063
msgid "failed to allocate Type 1 font family"
msgstr "无法分配一类别字体系列"

#: devPS.c:1102 devPS.c:1113
msgid "failed to allocate font list"
msgstr "无法分配字体列"

#: devPS.c:1164
msgid "failed to allocated encoding list"
msgstr "无法分配编码列"

#: devPS.c:1312
msgid "truncated string which was too long for copy"
msgstr "切断的字符串太长，无法拷贝"

#: devPS.c:1352
#, c-format
msgid "failed to load encoding file '%s'"
msgstr "无法载入编码文本'%s'"

#: devPS.c:1445 devPS.c:1478
msgid "invalid font name or more than one font name"
msgstr "字体名字不对或太多"

#: devPS.c:1599 devPS.c:1634
#, c-format
msgid "font family '%s' not found in PostScript font database"
msgstr "PostScript字体数据库里找不到'%s'这个字体系列"

#: devPS.c:1718 devPS.c:1800 devPS.c:1827
#, c-format
msgid "font encoding for family '%s' not found in font database"
msgstr "字体数据库里找不到'%s'字体系列的字体编码"

#: devPS.c:1745 devPS.c:1772
#, c-format
msgid "font CMap for family '%s' not found in font database"
msgstr "字体数据库里找不到用于'%s'字体系列的CMap这个字体"

#: devPS.c:1967 devPS.c:2047 devPS.c:2115
#, c-format
msgid "cannot load afm file '%s'"
msgstr "无法载入afm文本'%s'"

#: devPS.c:2403
msgid "corrupt loaded encodings;  encoding not recorded"
msgstr "载入的编码损坏了; 没有记录编码"

#: devPS.c:2414
msgid "failed to record device encoding"
msgstr "无法记录装置编码"

#: devPS.c:2585
msgid "object '.ps.prolog' is not a character vector"
msgstr "对象'.ps.prolog'不是字符向量"

#: devPS.c:2660 devPS.c:6459 devWindows.c:801
msgid "invalid line end"
msgstr "行尾出错"

#: devPS.c:2679 devPS.c:6478 devWindows.c:814
msgid "invalid line join"
msgstr "行接連處出错"

#: devPS.c:2687
msgid "invalid line mitre"
msgstr "行斜接出错"

#: devPS.c:2896 devPS.c:3802 devPS.c:4250 devPS.c:4277 devPS.c:5290
#: devPS.c:7815 devPS.c:7860
#, c-format
msgid "attempt to use invalid font %d replaced by font 1"
msgstr "不能用%d这个字体，代用一字体"

#: devPS.c:3118 devPS.c:4752 devPS.c:5871
#, c-format
msgid "filename too long in %s()"
msgstr "%s()里的文本名字太长"

#: devPS.c:3124 devPS.c:4758 devPS.c:5877
#, c-format
msgid "memory allocation problem in %s()"
msgstr "%s()内存分配出了问题"

#: devPS.c:3142 devPS.c:5941
#, c-format
msgid "encoding path is too long in %s()"
msgstr "%s()里的编码路径太长"

#: devPS.c:3156 devPS.c:4798
#, c-format
msgid "failed to load encoding file in %s()"
msgstr "%s()中载入编码文本失败了'"

#: devPS.c:3201 devPS.c:3264 devPS.c:6000 devPS.c:6056 devPS.c:7695
msgid "invalid font type"
msgstr "字体类别出错"

#: devPS.c:3225
msgid "failed to initialise default PostScript font"
msgstr "无法初始化PostScript字体的默认值"

#: devPS.c:3291
msgid "failed to initialise additional PostScript fonts"
msgstr "无法初始化外加的PostScript字体"

#: devPS.c:3307
msgid "invalid foreground/background color (postscript)"
msgstr "前景/后景颜色不对(postscript)"

#: devPS.c:3312
msgid "'command' is too long"
msgstr "'command'太长"

#: devPS.c:3317
msgid "'postscript(print.it=TRUE)' used with an empty 'print' command"
msgstr "'postscript(print.it=TRUE)'不能用在空'print'命令里"

#: devPS.c:3368
#, c-format
msgid "invalid page type '%s' (postscript)"
msgstr "页类别'%s'(postscript)不对"

#: devPS.c:3482 devPS.c:4602 devWindows.c:2350
msgid ""
"semi-transparency is not supported on this device: reported only once per "
"page"
msgstr "此装置不支持半透明：每一页将被报告一次"

#: devPS.c:3593 devPS.c:3604
#, c-format
msgid "cannot open 'postscript' pipe to '%s'"
msgstr "无法打开'postscript'管道至'%s'"

#: devPS.c:3615 devPS.c:5008 devPS.c:5021 devPS.c:7114 qdPDF.c:98
#, c-format
msgid "cannot open file '%s'"
msgstr "无法打开'%s'文件"

#: devPS.c:3743 devPS.c:3758
#, c-format
msgid ""
"error from postscript() in running:\n"
"    %s"
msgstr ""
"postscript()出了错，是在运行这个命令时发生的:\n"
"    %s"

#: devPS.c:3790
#, c-format
msgid "CID family '%s' not included in postscript() device"
msgstr "postscript()装置里没有CID系列'%s'"

#: devPS.c:3808 devPS.c:3819 devPS.c:4257 devPS.c:4287 devPS.c:4392
#, c-format
msgid "family '%s' not included in postscript() device"
msgstr " postscript()装置里没有'%s'系列"

#: devPS.c:4332
#, c-format
msgid "unknown encoding '%s' in 'mbcsToSbcs'"
msgstr "'mbcsToSbcs'不存在'%s'这样的编码"

#: devPS.c:4342
#, c-format
msgid "conversion failure on '%s' in 'mbcsToSbcs': dot substituted for <%02x>"
msgstr "'mbcsToSbcs'里转换'%s'出错：<%02x>代替了dot"

#: devPS.c:4420
#, c-format
msgid "failed open converter to encoding '%s'"
msgstr "编码'%s'时文字转换器出了错"

#: devPS.c:4438 devPS.c:5335 devPS.c:7950
#, c-format
msgid "failed in text conversion to encoding '%s'"
msgstr "文字转换到编码'%s'时出了错"

#: devPS.c:4616
msgid "ran out of colors in xfig()"
msgstr "xfig()里的颜色不够用"

#: devPS.c:4645
#, c-format
msgid "unimplemented line texture %08x: using Dash-double-dotted"
msgstr "没有实现%08x这样的字行结构: 用Dash-double-dotted"

#: devPS.c:4711
#, c-format
msgid "unknown postscript font family '%s', using Helvetica"
msgstr "不存在postscript字体系列'%s', 用Helvetica"

#: devPS.c:4783
msgid "invalid foreground/background color (xfig)"
msgstr "前景/后景颜色不对(xfig)"

#: devPS.c:4816
msgid "only Type 1 fonts supported for XFig"
msgstr "XFig只支持Type 1字体"

#: devPS.c:4829
msgid "failed to initialise default XFig font"
msgstr "无法初始化XFig默认字体"

#: devPS.c:4866
#, c-format
msgid "invalid page type '%s' (xfig)"
msgstr "页类别'%s'出错(xfig)"

#: devPS.c:4874
#, c-format
msgid "xfig(%s, onefile=FALSE) will only return the last plot"
msgstr "xfig(%s, onefile=FALSE)只会返回最后的一张图"

#: devPS.c:5000
msgid "empty file name"
msgstr "空文本名字"

#: devPS.c:5067 devPS.c:5119 devPS.c:5697 devPS.c:5741 devPS.c:7174
msgid "write failed"
msgstr "讀寫失败"

#: devPS.c:5324
#, c-format
msgid "unable to use encoding '%s'"
msgstr "无法用编码'%s'"

#: devPS.c:5585 devPS.c:5588
msgid "failed to increase 'maxRaster'"
msgstr "无法增加’maxRaster’"

#: devPS.c:5600
msgid "unable to allocate raster image"
msgstr "无法分配光栅图像"

#: devPS.c:5801
msgid "corrupt loaded encodings;  font not added"
msgstr "载入的编码坏了; 字体没有加入"

#: devPS.c:5811
msgid "failed to record device encoding; font not added"
msgstr "无法记录装置编码; 字体没有加入"

#: devPS.c:5927
msgid "increasing the PDF version to 1.2"
msgstr "增加PDF版本到1.2"

#: devPS.c:5957
msgid "failed to load default encoding"
msgstr "无法载入默认编码"

#: devPS.c:6024
msgid "failed to initialise default PDF font"
msgstr "无法初始化PDF默认字体"

#: devPS.c:6079
msgid "failed to initialise additional PDF fonts"
msgstr "无法初始化外加的PDF字体"

#: devPS.c:6092
msgid "failed to allocate rasters"
msgstr "无法分配栅格"

#: devPS.c:6099
msgid "failed to allocate masks"
msgstr "无法分配面具"

#: devPS.c:6164
#, c-format
msgid "invalid paper type '%s' (pdf)"
msgstr "纸张类别'%s'不对(pdf)"

#: devPS.c:6188
msgid "invalid foreground/background color (pdf)"
msgstr "前景/后景颜色不对(pdf)"

#: devPS.c:6307
msgid "invalid 'alpha' value in PDF"
msgstr "PDF里的'alpha'值不对"

#: devPS.c:6332
msgid "increasing the PDF version to 1.4"
msgstr "增加PDF版本到1.4"

#: devPS.c:6383 devPS.c:6430
msgid "unknown 'colormodel', using 'srgb'"
msgstr "没有这种'colormodel'，用'srgb'"

#: devPS.c:6624
msgid "failed to load sRGB colorspace file"
msgstr "无法载入sRGB色彩文件"

#: devPS.c:6888
msgid "corrupt encodings in PDF device"
msgstr "PDF装置里的编码坏了"

#: devPS.c:6969
msgid "increasing the PDF version to 1.3"
msgstr "增加PDF版本到1.3"

#: devPS.c:7098
#, c-format
msgid "cannot open 'pdf' pipe to '%s'"
msgstr "无法打开通到'%s'的'pdf'管道"

#: devPS.c:7104
msgid "file = \"|cmd\" implies 'onefile = TRUE'"
msgstr "file = \"|cmd\"意味着'onefile = TRUE'"

#: devPS.c:7247
#, c-format
msgid ""
"cannot open 'pdf' file argument '%s'\n"
"  please shut down the PDF device"
msgstr ""
"无法打开'pdf'文本参数'%s'\n"
"  请关闭PDF装置"

#: devPS.c:7266
#, c-format
msgid ""
"Cannot open temporary file '%s' for compression (reason: %s); compression "
"has been turned off for this device"
msgstr ""

#: devPS.c:7720 devPS.c:8082 devPS.c:8129
msgid "failed to find or load PDF font"
msgstr "没有能够找到或载入PDF字体"

#: devPS.c:7904 devPS.c:8037
msgid "failed to find or load PDF CID font"
msgstr "没有能够找到或载入PDF CID字体"

#: devPS.c:8268 devPS.c:8272 devPS.c:8433 devPS.c:8437
#, c-format
msgid "invalid 'family' parameter in %s"
msgstr "%s里的'system'参数不对"

#: devPS.c:8290 devPS.c:8449
#, c-format
msgid "invalid 'fonts' parameter in %s"
msgstr "%s里的'fonts'参数不对"

#: devPS.c:8296 devPS.c:8459 devPS.c:8462 devWindows.c:3656 devWindows.c:3660
#: devWindows.c:3668 devWindows.c:3679 devWindows.c:3685 devWindows.c:3692
#: devWindows.c:3699 devWindows.c:3703
#, c-format
msgid "invalid value of '%s'"
msgstr "'%s'的值不对"

#: devPS.c:8309 devPS.c:8376 devPS.c:8476 devPicTeX.c:736 devWindows.c:3746
#, c-format
msgid "unable to start %s() device"
msgstr "无法启动%s()装置"

#: devQuartz.c:651
#, c-format
msgid "font \"%s\" could not be found for family \"%s\""
msgstr "字体家族\"%s\"里没有\"%s\"这一字体"

#: devQuartz.c:669
msgid "font family name is too long"
msgstr "字体家族名字太长"

#: devQuartz.c:709
#, c-format
msgid "no font could be found for family \"%s\""
msgstr "字体家族\"%s\"没有字体"

#: devQuartz.c:1374
msgid "invalid 'file' argument"
msgstr "'file'参数不对"

#: devQuartz.c:1401
msgid "invalid quartz() device size"
msgstr "quartz()装置大小不对"

#: devQuartz.c:1429
msgid "unable to create device description"
msgstr "无法建立设备描述文件"

#: devQuartz.c:1479
msgid ""
"unable to create quartz() device target, given type may not be supported"
msgstr "无法建立quartz()装置，可能不支持所提供的种类"

#: devQuartz.c:1609
msgid "Quartz device is not available on this platform"
msgstr "这个平台上没有石英装置"

#: devWindows.c:358 devWindows.c:404 devWindows.c:475
msgid "Not enough memory to copy graphics window"
msgstr "内存不够，无法拷贝图形窗"

#: devWindows.c:363 devWindows.c:409 devWindows.c:480
msgid "No device available to copy graphics window"
msgstr "没有装置来拷贝图形窗"

#: devWindows.c:413 devWindows.c:484
#, c-format
msgid "'%%' is not allowed in file name"
msgstr "文件名字中不能有'%%'"

#: devWindows.c:621
msgid "invalid font specification"
msgstr "字体设置出错"

#: devWindows.c:660
msgid "font family not found in Windows font database"
msgstr "Windows字体数据库里没有这样的字体系列"

#: devWindows.c:1091
msgid "plot history seems corrupted"
msgstr "绘图历史好象坏了"

#: devWindows.c:1098
msgid "no plot history!"
msgstr "没有绘图历史!"

#: devWindows.c:1816
#, c-format
msgid "filename too long in %s() call"
msgstr "%s()調用里的文本名字太长"

#: devWindows.c:1821 devWindows.c:1856 devWindows.c:1886
#, c-format
msgid "'width=%d, height=%d' are unlikely values in pixels"
msgstr "'width=%d, height=%d'这样的像素值很可能不对"

#: devWindows.c:1829 devWindows.c:1834 devWindows.c:1859 devWindows.c:1864
#: devWindows.c:1889 devWindows.c:1894
msgid "unable to allocate bitmap"
msgstr "无法分配bitmap"

#: devWindows.c:1840 devWindows.c:1870 devWindows.c:2190
#, c-format
msgid "unable to open file '%s' for writing"
msgstr "无法打开'%s'文本写入"

#: devWindows.c:1853
msgid "filename too long in jpeg() call"
msgstr "jpeg()調用中的文本名字太长"

#: devWindows.c:1883
msgid "filename too long in tiff() call"
msgstr "tiff()調用里的文本名字太长"

#: devWindows.c:1915
msgid "filename too long in win.metafile() call"
msgstr "win.metafile()調用里的文本名字太长"

#: devWindows.c:1925
#, c-format
msgid "unable to open metafile '%s' for writing"
msgstr "无法打开元文本'%s'写入"

#: devWindows.c:1927
msgid "unable to open clipboard to write metafile"
msgstr "无法打开剪輯板来写入元文本"

#: devWindows.c:2138
msgid "Insufficient memory for resize. Killing device"
msgstr "内存不够，无法重新修改大小. 关闭装置"

#: devWindows.c:2146
msgid "Insufficient memory for resize. Disabling alpha blending"
msgstr "内存不够，无法重新修改大小. 关闭alpha混合"

#: devWindows.c:2175
msgid "a clipboard metafile can store only one figure."
msgstr "剪輯板元文本只能保存一个图片。"

#: devWindows.c:2181
#, c-format
msgid "metafile '%s' could not be created"
msgstr "无法建立元文本'%s'"

#: devWindows.c:3121 devWindows.c:3770
msgid "R Graphics"
msgstr "R Graphics"

#: devWindows.c:3135
msgid "attempt to use the locator after dev.hold()"
msgstr "调用dev.hold()后不能再用定位器"

#: devWindows.c:3166
msgid "graphics device closed during call to locator or identify"
msgstr ""

#: devWindows.c:3407
msgid "option 'windowsTimeouts' should be integer"
msgstr "'windowsTimeouts'选择项必需是整数"

#: devWindows.c:3428
msgid "invalid device number in 'savePlot'"
msgstr "'savePlot'里的装置数目出了错"

#: devWindows.c:3430
msgid "invalid device in 'savePlot'"
msgstr "'savePlot'装置出错"

#: devWindows.c:3433
msgid "invalid filename argument in 'savePlot'"
msgstr "'savePlot'文本名字参数不对"

#: devWindows.c:3438
msgid "invalid type argument in 'savePlot'"
msgstr "'savePlot'类别参数不对"

#: devWindows.c:3465
msgid "unknown type in savePlot"
msgstr "savePlot里没有类别"

#: devWindows.c:3510 devWindows.c:3542 devWindows.c:3570 devWindows.c:3601
#: devWindows.c:3622
msgid "processing of the plot ran out of memory"
msgstr "处理图象时内存用完了"

#: devWindows.c:3586
msgid "Impossible to open "
msgstr "无法打开"

#: devWindows.c:3651
msgid "invalid 'width' or 'height'"
msgstr "'width'或'height'的值不对"

#: devices.c:51
msgid "argument must have positive length"
msgstr "参数的长度必需是下的"

#: devices.c:60
msgid "invalid argument"
msgstr "参数不对"

#: devices.c:89 devices.c:97 devices.c:105
msgid "NA argument is invalid"
msgstr ""

#: qdBitmap.c:79
#, c-format
msgid "QuartzBitmap_Output - unable to open file '%s'"
msgstr " QuartzBitmap_Output - 打不开'%s'文件"

#: qdBitmap.c:94
msgid "not a supported scheme, no image data written"
msgstr "不支持这个规划，因此没有写任何图象数据"

#: stubs.c:104
#, c-format
msgid "invalid '%s' argument"
msgstr "'%s'参数不对"

#~ msgid "Impossible to load Rbitmap.dll"
#~ msgstr "无法载入Rbitmap.dll"

#~ msgid "Invalid line end"
#~ msgstr "行尾出错"

#~ msgid "Invalid line join"
#~ msgstr "行接連處出错"

#~ msgid "Unable to load Rbitmap.dll"
#~ msgstr "无法载入Rbitmap.dll"

#~ msgid "Unable to load winCairo.dll: was it built?"
#~ msgstr "无法载入winCairo.dll: 构建了这个动态链接库没有？"

#~ msgid "FontBBox could not be parsed"
#~ msgstr "无法对字体BBox作句法分析"

#~ msgid "CharInfo could not be parsed"
#~ msgstr "无法对字符信息作句法分析"

#~ msgid "unable to start NULL device"
#~ msgstr "无法启动NULL装置"

#~ msgid "printing via file = \"\" is not implemented in this version"
#~ msgstr "本版本没有实现通过file = \"\" 印刷的这一功能"

#~ msgid "file = \"|cmd\" is not implemented in this version"
#~ msgstr "本版本没有实现file = \"|cmd\" 这一功能"

#~ msgid "%s not available for this device"
#~ msgstr "这个装置没有%s这个功能"

#~ msgid "%s not yet implemented for this device"
#~ msgstr "还没有为这个装置实现%s功能"

#~ msgid "Too many raster images"
#~ msgstr "光栅图像太多了"

#~ msgid "cannot allocate pd->pos"
#~ msgstr "无法分配pd->pos"

#~ msgid "cannot allocate pd->pageobj"
#~ msgstr "无法分配pd->pageobj"

#~ msgid "unable to increase page limit: please shutdown the pdf device"
#~ msgstr "无法增加页数限制: 请关闭pdf装置"

#~ msgid "invalid 'maxRasters' parameter in %s"
#~ msgstr "%s里的'maxRasters'参数不对"

#~ msgid "only gray colors are allowed in this color model"
#~ msgstr "这个颜色模型只能用灰色"

#~ msgid "cannot open 'postscript' file argument '%s'"
#~ msgstr "无法打开'postscript'文本参数'%s'"

#~ msgid "cannot open 'pdf' file argument '%s'"
#~ msgstr "无法打开'pdf'文本参数'%s'"

#~ msgid "filename too long in postscript"
#~ msgstr "postscript文本名字太长"

#~ msgid "filename too long in xfig"
#~ msgstr "xfig文本名字太长"

#~ msgid "filename too long in pdf"
#~ msgstr "pdf文本名字太长"

#~ msgid "unable to start device PostScript"
#~ msgstr "无法启动PostScript装置"

#~ msgid "unable to start device xfig"
#~ msgstr "无法启动xfig装置"

#~ msgid "unable to start device pdf"
#~ msgstr "无法启动pdf装置"

#~ msgid "unable to start device PicTeX"
#~ msgstr "无法启动PicTeX装置"

#~ msgid "recursive use of getGraphicsEvent not supported"
#~ msgstr "不支持getGraphicsEvent的遞迴使用"

#~ msgid "re-encoding is not possible on this system"
#~ msgstr "这个系统不能进行重新编码操作"

#~ msgid "invalid value of 'record' in devWindows"
#~ msgstr "devWindows的'record'值不对"

#~ msgid "invalid value of 'rescale' in devWindows"
#~ msgstr "devWindows的'rescale'值不对"

#~ msgid "invalid value of 'canvas' in devWindows"
#~ msgstr "devWindows的'canvas'值不对"

#~ msgid "invalid value of 'buffered' in devWindows"
#~ msgstr "devWindows的'buffered'值不对"

#~ msgid "invalid value of 'title' in devWindows"
#~ msgstr "devWindows的'title'值不对"

#~ msgid "unable to start device devWindows"
#~ msgstr "无法启动devWindows装置"

#~ msgid "can't find any fonts"
#~ msgstr "找不到任何字体"

#~ msgid "invalid width or height in quartz"
#~ msgstr "石英的宽度或长度不对"

#~ msgid "unable to start device Quartz"
#~ msgstr "无法启动石英装置"

#~ msgid "Font family not found in Quartz font database"
#~ msgstr "石英字体数据库里找不到字体系列"
