Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[FR] Ability to specify vertical text padding when displaying multiple lines #142

Closed
tynorton opened this issue Sep 23, 2024 · 3 comments
Closed
Assignees
Labels
enhancement New feature or request Feature Request

Comments

@tynorton
Copy link

tynorton commented Sep 23, 2024

Is your feature request related to a problem? Please describe.
Yes. I make use of NewLineOnSpecificSymbols to split applicable titles into multiple lines. Love that this flag exists.

When using a custom font and displaying multiple lines, text often overlaps because of insufficient vertical line spacing.

It would be great if we could specify our own line-height or vertical padding values to work around this issue.

Follow up improvements to all this "New line feature functionality" could be a cascading text color configuration after the split. It would be killer to be able to customize size, font, etc as well!

    "NewLineOnSpecificSymbols": "true",
    "NewLineSymbols": [
        " - ",
        ": "
    ],
    "NewLineSymbolsTextColor": [
        "#ffffff",
        "#c1c1c1"
    ],

i.e. Crouching Tiger Hidden Dragon: Sword of Destiny =>

<white>Crouching Tiger Hidden Dragon<white>
<lightgrey>Sword of Destiny</lightgrey>

Example of the issue (the comma overlaps with the 2nd line)
poster

@fscorrupt
Copy link
Owner

Hey, could you please share your redacted config.json, so i can test this a bit, never had the issue with my font.

@tynorton
Copy link
Author

tynorton commented Sep 23, 2024

You bet

{
  "ApiPart":{
    "tvdbapi": "x",
    "tmdbtoken": "x",
    "FanartTvAPIKey": "x",
    "PlexToken": "x",
    "JellyfinAPIKey": "x",
    "EmbyAPIKey": "x",
    "FavProvider": "tmdb",
    "WidthHeightFilter": "false",
    "PosterMinWidth": "2000",
    "PosterMinHeight": "3000",
    "BgTcMinWidth": "3840",
    "BgTcMinHeight": "2160",
    "tmdb_vote_sorting": "vote_average",
    "PreferredLanguageOrder": ["xx", "en"],
    "PreferredSeasonLanguageOrder": ["xx", "en"]
  },
  "PlexPart":{
    "LibstoExclude": [],
    "PlexUrl": "http://x:32400",
    "UsePlex": "true",
    "UploadExistingAssets": "false"
  },
  "JellyfinPart": {
    "LibstoExclude": ["Youtube", "Audiobooks", "KidsAudiobooks", "TechTrainings"],
    "JellyfinUrl": "http://192.168.1.93:8096",
    "UseJellyfin": "false",
    "UploadExistingAssets": "false"
  },
  "EmbyPart": {
    "LibstoExclude": ["Youtube", "Audiobooks", "KidsAudiobooks", "TechTrainings"],
    "EmbyUrl": "http://192.168.1.93:8096/emby",
    "UseEmby": "false",
    "UploadExistingAssets": "false"
  },
  "Notification":{
    "SendNotification":"False",
    "AppriseUrl": "discord://{WebhookID}/{WebhookToken}/",
    "Discord": "https://discordapp.com/api/webhooks/{WebhookID}/{WebhookToken}"
  },
  "PrerequisitePart":{
    "AssetPath": "D:/assets",
    "BackupPath": "D:/assets/backup",
    "PlexUpload": "false",
    "show_skipped":"false",
    "magickinstalllocation": "C:\\PosterTemp\\ImageMagickPortable",
    "maxLogs": "5",
    "logLevel": "2",
    "font": "Uni_acc.ttf",
    "RTLFont": "Uni_acc.ttf",
    "backgroundfont": "Uni_acc.ttf",
    "titlecardfont": "Uni_acc.ttf",
    "overlayfile": "overlay.png",
    "seasonoverlayfile": "overlay.png",
    "backgroundoverlayfile": "backgroundoverlay_new.png",
    "titlecardoverlayfile": "backgroundoverlay_new.png",
    "LibraryFolders": "true",
    "Posters": "true",
    "SeasonPosters": "true",
    "BackgroundPosters": "true",
    "TitleCards": "true",
    "NewLineOnSpecificSymbols": "true",
    "NewLineSymbols": [
        " - ",
        " OR: ",
        ": "
    ],
    "SkipTBA": "false",
    "SkipJapTitle": "false",
    "AssetCleanup": "false",
    "AutoUpdateIM": "false"
  },
  "OverlayPart":{
    "ImageProcessing": "true",
    "outputQuality": "92%"
  },
  "PosterOverlayPart": {
    "fontAllCaps": "true",
    "AddBorder": "true",
    "AddText": "true",
    "AddTextStroke": "false",
    "strokecolor": "black",
    "strokewidth": "6",
    "AddOverlay": "true",
    "fontcolor": "white",
    "bordercolor": "white",
    "minPointSize": "45",
    "maxPointSize": "300",
    "borderwidth": "30",
    "MaxWidth": "1900",
    "MaxHeight": "500",
    "text_offset": "+430"
  },
  "SeasonPosterOverlayPart": {
    "fontAllCaps": "true",
    "AddBorder": "true",
    "AddText": "true",
    "AddShowTitletoSeason": "false",
    "SeasonTextNewLines": "1",
    "AddTextStroke": "false",
    "strokecolor": "black",
    "strokewidth": "6",
    "AddOverlay": "true",
    "fontcolor": "white",
    "bordercolor": "white",
    "minPointSize": "95",
    "maxPointSize": "250",
    "borderwidth": "30",
    "MaxWidth": "1900",
    "MaxHeight": "500",
    "text_offset": "+400"
  },
  "BackgroundOverlayPart": {
    "fontAllCaps": "true",
    "AddOverlay": "true",
    "AddBorder": "false",
    "AddText": "false",
    "AddTextStroke": "false",
    "strokecolor": "black",
    "strokewidth": "6",
    "fontcolor": "white",
    "bordercolor": "white",
    "minPointSize": "100",
    "maxPointSize": "300",
    "borderwidth": "30",
    "MaxWidth": "3640",
    "MaxHeight": "500",
    "text_offset": "+200"
  },
  "TitleCardOverlayPart": {
    "UseBackgroundAsTitleCard": "false",
    "BackgroundFallback": "true",
    "AddOverlay": "true",
    "AddBorder": "true",
    "bordercolor": "white",
    "borderwidth": "30"
  },
  "TitleCardTitleTextPart": {
    "fontAllCaps": "true",
    "AddEPTitleText": "true",
    "AddTextStroke": "false",
    "strokecolor": "black",
    "strokewidth": "6",
    "fontcolor": "white",
    "minPointSize": "50",
    "maxPointSize": "150",
    "MaxWidth": "3640",
    "MaxHeight": "280",
    "text_offset": "+300"
  },
  "TitleCardEPTextPart": {
    "SeasonTCText": "Season",
    "EpisodeTCText": "Episode",
    "fontAllCaps": "true",
    "AddEPText": "true",
    "AddTextStroke": "false",
    "strokecolor": "black",
    "strokewidth": "4",
    "fontcolor": "white",
    "minPointSize": "50",
    "maxPointSize": "80",
    "MaxWidth": "1000",
    "MaxHeight": "120",
    "text_offset": "+150"
  }
}

@fscorrupt
Copy link
Owner

fscorrupt commented Sep 24, 2024

@tynorton
In your case a value of 25 got the best result :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request Feature Request
Projects
None yet
Development

No branches or pull requests

2 participants