I've tried ESFile: it only encrypts files in place, and to view them you need to decrypt them to disk. Also the encryption is nonstandard and broken: I found https://play.google.com/store/apps/details?id=eslock.vinit.com.eslockdecryptorfree&hl=en, which charges for decryption but lets you see previews of images for free, and I confirmed it decrypted an image I'd encrypted with a >15 digit passcode.
Tried https://play.google.com/store/apps/details?id=com.nemesis2.luksmanager, quits with error "luks: not found". App hasn't been updated since 2012, so I gave up.
Tried https://play.google.com/store/apps/details?id=com.sovworks.eds.android. It hangs when creating a container, when trying to mount one created elsewhere it gives an error.
Tried https://play.google.com/store/apps/details?id=csh.cryptonite, it only encrypts a folder, and has flaky support.
I've tried a couple others, but nothing does what I want. Does anyone know of one that works on Marshmallow? I'm using an S3 with CM 13.