Uses true color detection from updated libscterm
This commit is contained in:
parent
f785ecf9c1
commit
0eaf0973d9
@ -1,20 +1,16 @@
|
|||||||
#include <memory>
|
#include <memory>
|
||||||
|
#include <cmath>
|
||||||
#include <libscterm.hpp>
|
#include <libscterm.hpp>
|
||||||
#include <netpbm/pam.h>
|
#include <netpbm/pam.h>
|
||||||
#include "pixels.hpp"
|
#include "pixels.hpp"
|
||||||
|
|
||||||
// truecolor to palette color (216-color)
|
// truecolor to palette color (216-color)
|
||||||
static inline int t2p(int val) {
|
static inline int t2p(int val) {
|
||||||
return .5 + 5 * val / 255.0;
|
return round(5 * val / 255.0);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void write(std::ostream& os, FILE* in) {
|
static void write(std::ostream& os, FILE* in) {
|
||||||
char* tc = getenv("COLORTERM");
|
bool has_truecolor = sc::term::has_truecolor();
|
||||||
std::string colorterm {tc ? tc : ""};
|
|
||||||
bool has_truecolor = colorterm.size() > 0;
|
|
||||||
if (has_truecolor) {
|
|
||||||
has_truecolor = colorterm == "truecolor" || colorterm == "24bit";
|
|
||||||
}
|
|
||||||
struct pam info;
|
struct pam info;
|
||||||
pnm_readpaminit(in, &info, PAM_STRUCT_SIZE(tuple_type));
|
pnm_readpaminit(in, &info, PAM_STRUCT_SIZE(tuple_type));
|
||||||
std::unique_ptr<tuple, void(*)(void*)> row1 {pnm_allocpamrow(&info), pm_freerow};
|
std::unique_ptr<tuple, void(*)(void*)> row1 {pnm_allocpamrow(&info), pm_freerow};
|
||||||
|
Loading…
x
Reference in New Issue
Block a user