diff options
author | jstebbins <[email protected]> | 2011-09-20 16:14:26 +0000 |
---|---|---|
committer | jstebbins <[email protected]> | 2011-09-20 16:14:26 +0000 |
commit | 4b66f14ed34e840c79f97bc388ef8fff8d4eeed9 (patch) | |
tree | 6e43fecb79e5e5665de4a1c6459204a4430a5032 /gtk/src | |
parent | 0ddbb44151ad80ff7eaa1ccd9efa201b2a014c71 (diff) |
LinGui: tweak to loose crop
I like how Yeasah ensures that top and left crop will be even pixel
aligned in his cli patch. Do the same for the lingui. This ensures
that even if the input crop values are not even pixel aligned, the
result will be.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4240 b64f7644-9d1e-0410-96f1-a4d463321fa5
Diffstat (limited to 'gtk/src')
-rw-r--r-- | gtk/src/hb-backend.c | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/gtk/src/hb-backend.c b/gtk/src/hb-backend.c index 733340784..a4034143d 100644 --- a/gtk/src/hb-backend.c +++ b/gtk/src/hb-backend.c @@ -3864,17 +3864,19 @@ ghb_set_scale(signal_user_data_t *ud, gint mode) height = MOD_DOWN(crop_height, mod); need1 = (crop_height - height) / 2; - // If the top crop would fall on an odd boundary, crop the extra - // line from the bottom - need1 &= ~0x01; + // If the top crop would fall on an odd boundary, crop an extra + // line from the top + if ((crop[0] + need1) & 1) + need1++; need2 = crop_height - height - need1; crop[0] += need1; crop[1] += need2; need1 = (crop_width - width) / 2; - // If the top crop would fall on an odd boundary, crop the extra - // column from the right - need1 &= ~0x01; + // If the left crop would fall on an odd boundary, crop an extra + // column from the left + if ((crop[2] + need1) & 1) + need1++; need2 = crop_width - width - need1; crop[2] += need1; crop[3] += need2; |