mirror of
				https://github.com/paperless-ngx/paperless-ngx.git
				synced 2025-11-03 19:17:13 -05:00 
			
		
		
		
	Add GS_BINARY to settings to avoid harcoded call of "gs"
This commit is contained in:
		
							parent
							
								
									cbf008f37b
								
							
						
					
					
						commit
						ea282c22ba
					
				@ -247,6 +247,9 @@ PAPERLESS_EMAIL_SECRET=""
 | 
				
			|||||||
# Convert (part of the ImageMagick suite)
 | 
					# Convert (part of the ImageMagick suite)
 | 
				
			||||||
#PAPERLESS_CONVERT_BINARY=/usr/bin/convert
 | 
					#PAPERLESS_CONVERT_BINARY=/usr/bin/convert
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Ghostscript
 | 
				
			||||||
 | 
					#PAPERLESS_GS_BINARY = /usr/bin/gs
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Unpaper
 | 
					# Unpaper
 | 
				
			||||||
#PAPERLESS_UNPAPER_BINARY=/usr/bin/unpaper
 | 
					#PAPERLESS_UNPAPER_BINARY=/usr/bin/unpaper
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
@ -263,6 +263,9 @@ CONVERT_TMPDIR = os.getenv("PAPERLESS_CONVERT_TMPDIR")
 | 
				
			|||||||
CONVERT_MEMORY_LIMIT = os.getenv("PAPERLESS_CONVERT_MEMORY_LIMIT")
 | 
					CONVERT_MEMORY_LIMIT = os.getenv("PAPERLESS_CONVERT_MEMORY_LIMIT")
 | 
				
			||||||
CONVERT_DENSITY = os.getenv("PAPERLESS_CONVERT_DENSITY")
 | 
					CONVERT_DENSITY = os.getenv("PAPERLESS_CONVERT_DENSITY")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Ghostscript
 | 
				
			||||||
 | 
					GS_BINARY = os.getenv("PAPERLESS_GS_BINARY", "gs")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# OptiPNG
 | 
					# OptiPNG
 | 
				
			||||||
OPTIPNG_BINARY = os.getenv("PAPERLESS_OPTIPNG_BINARY", "optipng")
 | 
					OPTIPNG_BINARY = os.getenv("PAPERLESS_OPTIPNG_BINARY", "optipng")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
@ -29,6 +29,7 @@ class RasterisedDocumentParser(DocumentParser):
 | 
				
			|||||||
    """
 | 
					    """
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    CONVERT = settings.CONVERT_BINARY
 | 
					    CONVERT = settings.CONVERT_BINARY
 | 
				
			||||||
 | 
					    GHOSTSCRIPT = settings.GS_BINARY
 | 
				
			||||||
    DENSITY = settings.CONVERT_DENSITY if settings.CONVERT_DENSITY else 300
 | 
					    DENSITY = settings.CONVERT_DENSITY if settings.CONVERT_DENSITY else 300
 | 
				
			||||||
    THREADS = int(settings.OCR_THREADS) if settings.OCR_THREADS else None
 | 
					    THREADS = int(settings.OCR_THREADS) if settings.OCR_THREADS else None
 | 
				
			||||||
    UNPAPER = settings.UNPAPER_BINARY
 | 
					    UNPAPER = settings.UNPAPER_BINARY
 | 
				
			||||||
@ -47,12 +48,14 @@ class RasterisedDocumentParser(DocumentParser):
 | 
				
			|||||||
        out_path = os.path.join(self.tempdir, "convert.png")
 | 
					        out_path = os.path.join(self.tempdir, "convert.png")
 | 
				
			||||||
        gs_out_path = os.path.join(self.tempdir, "gs_out.png")
 | 
					        gs_out_path = os.path.join(self.tempdir, "gs_out.png")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        # Run convert to get a decent thumbnail
 | 
					        # Extract the first PDF page as a PNG using Ghostscript  
 | 
				
			||||||
 | 
					 | 
				
			||||||
        # https://github.com/danielquinn/paperless/issues/447
 | 
					        # https://github.com/danielquinn/paperless/issues/447
 | 
				
			||||||
        # call gs first
 | 
					        # call gs first
 | 
				
			||||||
        cmd = ["gs", "-q", "-sDEVICE=pngalpha",
 | 
					        cmd = [self.GHOSTSCRIPT, 
 | 
				
			||||||
               "-o", gs_out_path, self.document_path]
 | 
					               "-q",
 | 
				
			||||||
 | 
					               "-sDEVICE=pngalpha",
 | 
				
			||||||
 | 
					               "-o", gs_out_path,
 | 
				
			||||||
 | 
					               self.document_path]
 | 
				
			||||||
        if not subprocess.Popen(cmd).wait() == 0:
 | 
					        if not subprocess.Popen(cmd).wait() == 0:
 | 
				
			||||||
            raise ParseError("Thumbnail (gs) failed at {}".format(cmd))
 | 
					            raise ParseError("Thumbnail (gs) failed at {}".format(cmd))
 | 
				
			||||||
        # then run convert on the output from gs
 | 
					        # then run convert on the output from gs
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user