# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the grDevices package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: grDevices 4.0.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-03-24 10:53-0700\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"

#: axis_scales.c:37 axis_scales.c:38 axis_scales.c:56
#, c-format
msgid "'%s' must be numeric of length %d"
msgstr ""

#: colors.c:69
#, c-format
msgid "color intensity %s, not in [0,1]"
msgstr ""

#: colors.c:71
#, c-format
msgid "color intensity %g, not in [0,1]"
msgstr ""

#: colors.c:78
#, c-format
msgid "color intensity %s, not in 0:255"
msgstr ""

#: colors.c:80
#, c-format
msgid "color intensity %d, not in 0:255"
msgstr ""

#: colors.c:87
#, c-format
msgid "alpha level %s, not in [0,1]"
msgstr ""

#: colors.c:89
#, c-format
msgid "alpha level %g, not in [0,1]"
msgstr ""

#: colors.c:96
#, c-format
msgid "alpha level %s, not in 0:255"
msgstr ""

#: colors.c:98
#, c-format
msgid "alpha level %d, not in 0:255"
msgstr ""

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

#: colors.c:128
msgid "bad hsv to rgb color conversion"
msgstr ""

#: colors.c:220 colors.c:234
msgid "invalid hsv color"
msgstr ""

#: colors.c:346 colors.c:366
msgid "invalid hcl color"
msgstr ""

#: colors.c:398
msgid "invalid value of 'maxColorValue'"
msgstr ""

#: colors.c:426
msgid "invalid 'names' vector"
msgstr ""

#: colors.c:485 colors.c:494
msgid "invalid gray level, must be in [0,1]."
msgstr ""

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

#: colors.c:1337
msgid "invalid hex digit in 'color' or 'lty'"
msgstr ""

#: colors.c:1347 colors.c:1357
msgid "invalid RGB specification"
msgstr ""

#: colors.c:1390
#, c-format
msgid "invalid color name '%s'"
msgstr ""

#: colors.c:1440 colors.c:1449
#, c-format
msgid "invalid color specification \"%s\""
msgstr ""

#: 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 ""

#: 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 ""

#: devPS.c:562
#, c-format
msgid "afm file '%s' could not be opened"
msgstr ""

#: devPS.c:630
msgid "unknown AFM entity encountered"
msgstr ""

#: 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 ""

#: devPS.c:776
#, c-format
msgid "font width unknown for character 0x%x"
msgstr ""

#: devPS.c:834
#, c-format
msgid "unknown encoding '%s' in 'PostScriptMetricInfo'"
msgstr ""

#: devPS.c:850 devPS.c:861
#, c-format
msgid "font metrics unknown for Unicode character U+%04x"
msgstr ""

#: devPS.c:869
#, c-format
msgid "font metrics unknown for character 0x%x"
msgstr ""

#: devPS.c:883
#, c-format
msgid ""
"invalid character (%04x) sent to 'PostScriptCIDMetricInfo' in a single-byte "
"locale"
msgstr ""

#: devPS.c:891
msgid ""
"invalid character sent to 'PostScriptCIDMetricInfo' in a single-byte locale"
msgstr ""

#: devPS.c:996
msgid "failed to allocate CID font info"
msgstr ""

#: 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 ""

#: 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 ""

#: 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 ""

#: devPS.c:1718 devPS.c:1800 devPS.c:1827
#, c-format
msgid "font encoding for family '%s' not found in font database"
msgstr ""

#: devPS.c:1745 devPS.c:1772
#, c-format
msgid "font CMap for family '%s' not found in font database"
msgstr ""

#: devPS.c:1967 devPS.c:2047 devPS.c:2115
#, c-format
msgid "cannot load afm file '%s'"
msgstr ""

#: 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 ""

#: 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 ""

#: devPS.c:3118 devPS.c:4752 devPS.c:5871
#, c-format
msgid "filename too long in %s()"
msgstr ""

#: devPS.c:3124 devPS.c:4758 devPS.c:5877
#, c-format
msgid "memory allocation problem in %s()"
msgstr ""

#: devPS.c:3142 devPS.c:5941
#, c-format
msgid "encoding path is too long in %s()"
msgstr ""

#: devPS.c:3156 devPS.c:4798
#, c-format
msgid "failed to load encoding file in %s()"
msgstr ""

#: 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 ""

#: devPS.c:3291
msgid "failed to initialise additional PostScript fonts"
msgstr ""

#: devPS.c:3307
msgid "invalid foreground/background color (postscript)"
msgstr ""

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

#: devPS.c:3317
msgid "'postscript(print.it=TRUE)' used with an empty 'print' command"
msgstr ""

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

#: 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 ""

#: devPS.c:3615 devPS.c:5008 devPS.c:5021 devPS.c:7114 qdPDF.c:98
#, c-format
msgid "cannot open file '%s'"
msgstr ""

#: devPS.c:3743 devPS.c:3758
#, c-format
msgid ""
"error from postscript() in running:\n"
"    %s"
msgstr ""

#: devPS.c:3790
#, c-format
msgid "CID family '%s' not included in postscript() device"
msgstr ""

#: 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 ""

#: devPS.c:4332
#, c-format
msgid "unknown encoding '%s' in 'mbcsToSbcs'"
msgstr ""

#: devPS.c:4342
#, c-format
msgid "conversion failure on '%s' in 'mbcsToSbcs': dot substituted for <%02x>"
msgstr ""

#: devPS.c:4420
#, c-format
msgid "failed open converter to encoding '%s'"
msgstr ""

#: devPS.c:4438 devPS.c:5335 devPS.c:7950
#, c-format
msgid "failed in text conversion to encoding '%s'"
msgstr ""

#: devPS.c:4616
msgid "ran out of colors in xfig()"
msgstr ""

#: devPS.c:4645
#, c-format
msgid "unimplemented line texture %08x: using Dash-double-dotted"
msgstr ""

#: devPS.c:4711
#, c-format
msgid "unknown postscript font family '%s', using Helvetica"
msgstr ""

#: devPS.c:4783
msgid "invalid foreground/background color (xfig)"
msgstr ""

#: devPS.c:4816
msgid "only Type 1 fonts supported for XFig"
msgstr ""

#: devPS.c:4829
msgid "failed to initialise default XFig font"
msgstr ""

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

#: devPS.c:4874
#, c-format
msgid "xfig(%s, onefile=FALSE) will only return the last plot"
msgstr ""

#: 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 ""

#: devPS.c:5585 devPS.c:5588
msgid "failed to increase 'maxRaster'"
msgstr ""

#: 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 ""

#: devPS.c:5957
msgid "failed to load default encoding"
msgstr ""

#: devPS.c:6024
msgid "failed to initialise default PDF font"
msgstr ""

#: devPS.c:6079
msgid "failed to initialise additional PDF fonts"
msgstr ""

#: 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 ""

#: devPS.c:6188
msgid "invalid foreground/background color (pdf)"
msgstr ""

#: devPS.c:6307
msgid "invalid 'alpha' value in PDF"
msgstr ""

#: devPS.c:6332
msgid "increasing the PDF version to 1.4"
msgstr ""

#: devPS.c:6383 devPS.c:6430
msgid "unknown 'colormodel', using 'srgb'"
msgstr ""

#: devPS.c:6624
msgid "failed to load sRGB colorspace file"
msgstr ""

#: devPS.c:6888
msgid "corrupt encodings in PDF device"
msgstr ""

#: devPS.c:6969
msgid "increasing the PDF version to 1.3"
msgstr ""

#: devPS.c:7098
#, c-format
msgid "cannot open 'pdf' pipe to '%s'"
msgstr ""

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

#: devPS.c:7247
#, c-format
msgid ""
"cannot open 'pdf' file argument '%s'\n"
"  please shut down the PDF device"
msgstr ""

#: 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 ""

#: devPS.c:7904 devPS.c:8037
msgid "failed to find or load PDF CID font"
msgstr ""

#: devPS.c:8268 devPS.c:8272 devPS.c:8433 devPS.c:8437
#, c-format
msgid "invalid 'family' parameter in %s"
msgstr ""

#: devPS.c:8290 devPS.c:8449
#, c-format
msgid "invalid 'fonts' parameter in %s"
msgstr ""

#: 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 ""

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

#: devQuartz.c:651
#, c-format
msgid "font \"%s\" could not be found for family \"%s\""
msgstr ""

#: 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 ""

#: devQuartz.c:1374
msgid "invalid 'file' argument"
msgstr ""

#: devQuartz.c:1401
msgid "invalid quartz() device size"
msgstr ""

#: 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 ""

#: 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 ""

#: 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 ""

#: devWindows.c:1821 devWindows.c:1856 devWindows.c:1886
#, c-format
msgid "'width=%d, height=%d' are unlikely values in pixels"
msgstr ""

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

#: devWindows.c:1840 devWindows.c:1870 devWindows.c:2190
#, c-format
msgid "unable to open file '%s' for writing"
msgstr ""

#: devWindows.c:1853
msgid "filename too long in jpeg() call"
msgstr ""

#: devWindows.c:1883
msgid "filename too long in tiff() call"
msgstr ""

#: devWindows.c:1915
msgid "filename too long in win.metafile() call"
msgstr ""

#: devWindows.c:1925
#, c-format
msgid "unable to open metafile '%s' for writing"
msgstr ""

#: 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 ""

#: 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 ""

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

#: devWindows.c:3135
msgid "attempt to use the locator after dev.hold()"
msgstr ""

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

#: devWindows.c:3407
msgid "option 'windowsTimeouts' should be integer"
msgstr ""

#: devWindows.c:3428
msgid "invalid device number in 'savePlot'"
msgstr ""

#: devWindows.c:3430
msgid "invalid device in 'savePlot'"
msgstr ""

#: devWindows.c:3433
msgid "invalid filename argument in 'savePlot'"
msgstr ""

#: devWindows.c:3438
msgid "invalid type argument in 'savePlot'"
msgstr ""

#: devWindows.c:3465
msgid "unknown type in savePlot"
msgstr ""

#: 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 ""

#: 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 ""

#: qdBitmap.c:94
msgid "not a supported scheme, no image data written"
msgstr ""

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